From 34a7c41db3ef40be2b18550ad29b2683e63bafcf Mon Sep 17 00:00:00 2001 From: paolo Date: Sat, 1 Jan 2005 21:03:33 +0000 Subject: [PATCH] 2005-01-01 Paolo Carlini * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@92789 138bc75d-0d04-0410-961f-82ee72b054a4 --- libstdc++-v3/ChangeLog | 6709 +------------------- libstdc++-v3/ChangeLog-2004 | 6707 +++++++++++++++++++ .../basic_istream/extractors_character/char/1.cc | 5 +- .../extractors_character/wchar_t/1.cc | 5 +- 4 files changed, 6717 insertions(+), 6709 deletions(-) create mode 100644 libstdc++-v3/ChangeLog-2004 diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 9b58b9ed936..e7949227c9d 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,6707 +1,6 @@ -2004-12-31 Paolo Carlini +2005-01-01 Paolo Carlini - * include/tr1/type_traits (is_member_function_pointer): Provide a - workaround for c++/19076, correct for functions with up to 15 - arguments. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_member_pointer/is_member_pointer.cc: Uncomment "XFAILed" tests; - add a test for variadic functions. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_scalar/is_scalar.cc: Uncomment "XFAILed" tests. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_enum/is_enum.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_member_function_pointer/is_member_function_pointer.cc: Likewise; - add a test for variadic functions. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_member_object_pointer/is_member_object_pointer.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_nothrow_assign/has_nothrow_assign.cc: Uncomment "XFAILed" tests. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_nothrow_constructor/has_nothrow_constructor.cc: Likewise. - * 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_constructor/has_trivial_constructor.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_copy/has_trivial_copy.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_destructor/has_trivial_destructor.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - is_pod/is_pod.cc: Likewise. - -2004-12-30 Paolo Carlini - - * include/tr1/type_traits: Add has_trivial_copy, has_trivial_assign, - has_nothrow_copy, has_nothrow_assign. - * testsuite/testsuite_tr1.h: Add test_copy_property and - test_assign_property. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_nothrow_assign/has_nothrow_assign.cc: New. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_nothrow_assign/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_nothrow_copy/has_nothrow_copy.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_nothrow_copy/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_assign/has_trivial_assign.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_assign/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_copy/has_trivial_copy.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_copy/typedefs.cc: Likewise. - -2004-12-29 Jonathan Wakely - - * include/bits/vector.tcc (erase(iterator, iterator), - operator=, _M_assign_aux(_ForwardIterator, _ForwardIterator, - forward_iterator_tag)): Qualify all calls to std::copy(). - -2004-12-29 Paolo Carlini - - Minimal fixes for -fno-exceptions. - * src/bitmap_allocator.cc (free_list::_M_get): Use - __throw_exception_again, instead of plain throw. - * testsuite/testsuite_abi.cc (get_symbol, examine_symbol, - create_symbols): Likewise. - * testsuite/testsuite_hooks.cc (verify_demangle, - run_tests_wrapped_locale, run_tests_wrapped_env): Likewise. - (try_named_locale): Wrap the whole catch in __EXCEPTIONS. - -2004-12-29 Paolo Carlini - - * include/tr1/type_traits: Add has_nothrow_constructor. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_nothrow_constructor/has_nothrow_constructor.cc: New. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_nothrow_constructor/typedefs.cc: Likewise. - -2004-12-28 David Edelsohn - - * configure.host (aix4*|aix5*): Add atomic_word_dir. - * config/os/aix/atomic_word.h: New file. - -2004-12-27 Jason Merrill - - Add memory barriers to the double-checked locking used for static - initialization. - * libsupc++/guard.cc (__test_and_acquire): Define default. - (_GLIBCXX_GUARD_TEST_AND_ACQUIRE, __set_and_release) - (_GLIBCXX_GUARD_SET_AND_RELEASE): Likewise. - (recursion_push, recursion_pop): New abstraction functions. - (__cxa_guard_acquire): Use _GLIBCXX_GUARD_TEST_AND_ACQUIRE. - (__cxa_guard_release): Use _GLIBCXX_GUARD_SET_AND_RELEASE. - * config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST): Rename - from _GLIBCXX_GUARD_ACQUIRE and reverse sense. - (_GLIBCXX_GUARD_SET): Rename from _GLIBCXX_GUARD_RELEASE. - * config/cpu/arm/cxxabi_tweaks.h: Likewise. - * config/cpu/alpha/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER) - (_GLIBCXX_WRITE_MEM_BARRIER): Define. - * config/cpu/powerpc/atomic_word.h: Likewise. - * config/cpu/sparc/atomic_word.h: Likewise. - * config/cpu/generic/atomic_word.h: Define them, commented out. - * include/bits/atomicity.h: Define defaults. - * config/cpu/ia64/atomic_word.h (__test_and_acquire) - (__set_and_release): New inlines. - (_GLIBCXX_GUARD_TEST_AND_ACQUIRE): Define. - (_GLIBCXX_GUARD_SET_AND_RELEASE): Define. - - * libsupc++/guard.cc (acquire_1): Use __builtin_trap instead of - abort(); - -2004-12-27 Paolo Carlini - - * include/tr1/type_traits: Rework the _DEFINE_SPEC* macros. - -2004-12-26 Paolo Carlini - - * include/tr1/type_traits (__is_enum_helper): Slightly simplify, - make __convert non template. - -2004-12-26 Paolo Carlini - - * include/tr1/type_traits: Implement is_pod, has_trivial_constructor, - and has_trivial_destructor. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_constructor/has_trivial_constructor.cc: New. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_constructor/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_destructor/has_trivial_destructor.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - has_trivial_destructor/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - is_pod/is_pod.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - is_pod/typedefs.cc: Likewise. - -2004-12-25 Paolo Carlini - - * include/tr1/type_traits (is_enum): Minor tweak. - -2004-12-25 Paolo Carlini - - * include/tr1/type_traits: Implement is_enum (usual caveats about - the nasty consequences of c++/19076...). - * testsuite/testsuite_tr1.h: Add ConvType. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_scalar/is_scalar.cc: New. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_scalar/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_enum/is_enum.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_enum/typedefs.cc: Likewise. - -2004-12-24 Paolo Carlini - - * include/tr1/type_traits: Add missing undef. - -2004-12-24 Paolo Carlini - - * include/tr1/type_traits: Implement is_member_object_pointer, - is_member_function_pointer. N.B. Due to c++/19076, the latter - doesn't really work at the moment (a rather ugly work around - will be provided in case the front-end bug doesn't get fixed - soon); generalize and extend the _DEFINE_SPEC macros. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_member_pointer/is_member_pointer.cc: New. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_member_pointer/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_member_function_pointer/is_member_function_pointer.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_member_function_pointer/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_member_object_pointer/is_member_object_pointer.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_member_object_pointer/typedefs.cc: Likewise. - -2004-12-22 Paolo Carlini - - * include/tr1/type_traits_fwd.h: New, forward declarations. - * include/tr1/type_traits: Clean-up. - * include/Makefile.am: Add. - * include/Makefile.in: Regenerate. - -2004-12-20 Paolo Carlini - - * testsuite/27_io/basic_istream/peek/wchar_t/1.cc: New. - * testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise. - * testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise. - * testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise. - * testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise. - * testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise. - * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise. - * testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise. - * testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise. - * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise. - * testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise. - * testsuite/27_io/basic_istream/seekg/wchar_t/ - exceptions_badbit_throw.cc: Likewise. - * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise. - * testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise. - * testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise. - * testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise. - * testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise. - * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise. - * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise. - * testsuite/27_io/basic_istream/tellg/wchar_t/ - exceptions_badbit_throw.cc: Likewise. - * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise. - * testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise. - * testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise. - - * testsuite/data/wistream_extractor_other-1.tst: New. - * testsuite/data/wistream_extractor_other-1.txt: Likewise. - * testsuite/data/wistream_extractor_other-2.tst: Likewise. - * testsuite/data/wistream_seeks-1.tst: Likewise. - * testsuite/data/wistream_seeks-1.txt: Likewise. - * testsuite/data/wistream_unformatted-1.tst: Likewise. - * testsuite/data/wistream_unformatted-1.txt: Likewise. - - * testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc: - Use wistream_extractor_other-1.txt. - - * testsuite/27_io/basic_istream/peek/char/6414.cc: Minor clean-up. - * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise. - * testsuite/27_io/basic_istream/read/char/1.cc: Likewise. - * testsuite/27_io/basic_istream/read/char/2.cc: Likewise. - -2004-12-19 Paolo Carlini - - * testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: New. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 01.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 02.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 03.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 06.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 07.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 08.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 09.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 10.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 11.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 12.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 13.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - 9555-ia.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - exceptions_badbit_throw.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - exceptions_failbit.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ - exceptions_failbit_throw.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_character/wchar_t/ - 1.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_character/wchar_t/ - 11095-i.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_character/wchar_t/ - 2.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_character/wchar_t/ - 3.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_character/wchar_t/ - 9555-ic.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - 1.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - 2.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - 3.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - 9318-in.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - 9424-in.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - 9555-io.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - error_failbit.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - exceptions_badbit_throw.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - exceptions_failbit_throw.cc: Likewise. - * testsuite/27_io/basic_istream/extractors_other/wchar_t/ - exceptions_null.cc: Likewise. - - * testsuite/27_io/basic_istream/extractors_other/char/2.cc: Minor - tweaks. - - * testsuite/testsuite_io.h (struct fail_buf): Fix type of - dummy return values. - -2004-12-19 Dhruv Matani - - * include/ext/bitmap_allocator.h: Make doxygen style comments for - internal functions and classes. - -2004-12-19 Dhruv Matani - - * docs/html/20_util/allocator.html: Correct link. - * docs/html/ext/ballocator_doc.txt: Remove. - * docs/html/ext/ballocator_doc.html: Add. - -2004-12-16 Danny Smith - - PR target/18997 - * config/os/newlib/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK): - Define to 0 for __CYGWIN__. - -2004-12-16 Paolo Carlini - - * include/tr1/type_traits: Implement add_const, add_volatile, - and add_cv. - * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ - add_const.cc: New. - * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ - add_cv.cc: Likewise. - * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ - add_volatile.cc: Likewise. - -2004-12-16 Paolo Carlini - - * include/tr1/type_traits: Implement is_function. - (struct __sfinae_types, struct __is_function_helper): New. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_object/is_object.cc: New. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_object/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_function/is_function.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_function/typedefs.cc: Likewise. - -2004-12-13 Paolo Carlini - - * include/tr1/type_traits (extent): Minor tweak (i.e., public). - -2004-12-12 Paolo Carlini - - * include/tr1/type_traits: Minor tweak. - * testsuite/tr1/4_metaprogramming/type_properties/extent/ - typedefs.cc: Fix date. - -2004-12-12 Paolo Carlini - - * include/tr1/type_traits: Implement extent. - * testsuite/tr1/4_metaprogramming/type_properties/extent/ - extent.cc: New. - * testsuite/tr1/4_metaprogramming/type_properties/extent/ - typedefs.cc: Likewise. - -2004-12-12 Paolo Carlini - - * include/tr1/type_traits: Implement is_pointer, remove_pointer, - and add_pointer; reformat. - (_DEFINE_PRIMARY_SPEC_HELPER, _DEFINE_PRIMARY_SPEC): Generalize - and rename to _DEFINE_SPEC_HELPER and _DEFINE_SPEC; update uses. - * testsuite/tr1/4_metaprogramming/pointer_modifications/ - add_pointer.cc: New. - * testsuite/tr1/4_metaprogramming/pointer_modifications/ - remove_pointer.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_pointer/is_pointer.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_pointer/typedefs.cc: Likewise. - - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_reference/is_reference.cc: Slightly tweak consistently. - -2004-12-11 Paolo Carlini - - * include/tr1/type_traits: Implement rank. - * testsuite/testsuite_tr1.h (test_property): Generalize to any - value_type. - (test_category, test_relationship): Slightly tweak consistently. - * testsuite/tr1/4_metaprogramming/type_properties/rank/ - rank.cc: New. - * testsuite/tr1/4_metaprogramming/type_properties/rank/ - typedefs.cc: Likewise. - - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_compound/is_compound.cc: New. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_compound/typedefs.cc: Likewise. - - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_arithmetic/is_arithmetic.cc: Tweak consistently with the - testsuite_tr1.h changes. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_fundamental/is_fundamental.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_array/is_array.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_floating_point/is_floating_point.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_integral/is_integral.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_reference/is_reference.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_void/is_void.cc: Likewise. - * testsuite/tr1/4_metaprogramming/relationships_between_types/ - is_same/is_same.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/is_const/ - is_const.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/is_volatile/ - is_volatile.cc: Likewise. - -2004-12-10 Paolo Carlini - - * include/tr1/type_traits: Implement remove_const, remove_volatile, - and remove_cv. - * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ - remove_const.cc: New. - * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ - remove_cv.cc: Likewise. - * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ - remove_volatile.cc: Likewise. - - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_array/is_array.cc: Slightly tweak consistently, remove typedefs, - add a few tests. - -2004-12-09 Paolo Carlini - - * include/tr1/type_traits: Implement remove_extent and - remove_all_extents. - * testsuite/tr1/4_metaprogramming/array_modifications/ - remove_all_extents.cc: New. - * testsuite/tr1/4_metaprogramming/array_modifications/ - remove_extent.cc: Likewise. - -2004-12-08 Paolo Carlini - - * include/tr1/type_traits: Implement is_same, add_reference and - remove_reference. - * testsuite/testsuite_tr1.h (test_relationship): New. - * testsuite/tr1/4_metaprogramming/reference_modifications/ - add_reference.cc: New. - * testsuite/tr1/4_metaprogramming/reference_modifications/ - remove_reference.cc: Likewise. - * testsuite/tr1/4_metaprogramming/relationships_between_types/ - is_same/is_same.cc: Likewise. - * testsuite/tr1/4_metaprogramming/relationships_between_types/ - is_same/typedefs.cc: Likewise. - - * testsuite/tr1/4_metaprogramming/type_properties/is_const/ - is_const.cc: Minor tweaks. - * testsuite/tr1/4_metaprogramming/type_properties/is_volatile/ - is_volatile.cc: Likewise. - -2004-12-08 David Edelsohn - - * Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and - PICFLAG. - * Makefile.in: Regenerated. - -2004-12-07 Paolo Carlini - - * include/tr1/type_traits: Implement is_const and is_volatile. - * testsuite/testsuite_tr1.h (test_property): New. - * testsuite/tr1/4_metaprogramming/type_properties/ - is_const/is_const.c: New. - * testsuite/tr1/4_metaprogramming/type_properties/ - is_const/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - is_volatile/is_volatile.cc: Likewise. - * testsuite/tr1/4_metaprogramming/type_properties/ - is_volatile/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_arithmetic/is_arithmetic.cc: Slightly tweak to use ClassType - from testsuite_tr1.h. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_fundamental/is_fundamental.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_array/is_array.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_floating_point/is_floating_point.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_integral/is_integral.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_reference/is_reference.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_void/is_void.cc: Likewise. - -2004-12-06 Paolo Carlini - - * include/tr1/type_traits: Implement is_reference. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_reference/is_reference.cc: New. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_reference/typedefs.cc: Likewise. - -2004-12-05 Paolo Carlini - - PR libstdc++/18837 - * testsuite/testsuite_performance.h: Fix mallinfo macros for - hpux. - -2004-12-04 Richard Henderson - - * testsuite/26_numerics/complex/pow.cc: Use -mieee on alpha. - -2004-12-04 Richard Henderson - - * include/ext/malloc_allocator.h: Include cstdlib. - -2004-12-04 Paolo Carlini - - * include/tr1/type_traits: New. - * include/Makefile.am: Add. - * include/Makefile.in: Regenerate. - * testsuite/testsuite_tr1.h: New. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_arithmetic/is_arithmetic.cc: New. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_arithmetic/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_fundamental/is_fundamental.cc: Likewise. - * testsuite/tr1/4_metaprogramming/composite_type_traits/ - is_fundamental/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/helper_classes/ - true_false_type.cc: Likewise. - * testsuite/tr1/4_metaprogramming/helper_classes/ - true_false_type_typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/helper_classes/ - typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_array/is_array.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_array/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_floating_point/is_floating_point.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_floating_point/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_integral/is_integral.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_integral/typedefs.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_void/is_void.cc: Likewise. - * testsuite/tr1/4_metaprogramming/primary_type_categories/ - is_void/typedefs.cc: Likewise. - -2004-12-02 Paolo Carlini - - * testsuite/testsuite_io.h (class sync_buf): New, templatized - version of sync_streambuf; add typedefs for streambuf/wstreambuf. - (class fail_buf): Likewise, for fail_streambuf. - (class fail_num_get): Templatize and add char/wchar_t typedefs. - (class fail_num_put): Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/ - exceptions_badbit_throw.cc: Use the latter. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/ - exceptions_failbit_throw.cc: Likewise. - * testsuite/27_io/basic_ostream/inserters_arithmetic/char/ - exceptions_badbit_throw.cc: Likewise. - * testsuite/27_io/basic_ostream/inserters_arithmetic/char/ - exceptions_failbit_throw.cc: Likewise. - -2004-12-01 Paolo Carlini - - * testsuite/27_io/basic_istream/get/wchar_t/1.cc: New. - * testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise. - * testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise. - * testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise. - * testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise. - * testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise. - * testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise. - -2004-11-29 Paolo Carlini - - * testsuite/21_strings/basic_string/capacity/char/18654.cc: Use - better names. - * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: Same. - -2004-11-29 Paolo Carlini - - PR libstdc++/18654 - * include/bits/basic_string.tcc (_Rep::_S_create): When shrinking, - do not round to pagesize. - * testsuite/21_strings/basic_string/capacity/char/18654.cc: New. - * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: New. - -2004-11-27 Paolo Carlini - - PR libstdc++/18690 - * include/tr1/utility (get(pair), get(const pair)): Change - occurrences of _I to _Int. - -2004-11-27 Paolo Carlini - - * testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Fix typo. - * testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise. - - * testsuite/22_locale/time_put/put/char/17038.cc: Use VERIFY. - * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise. - * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise. - * testsuite/27_io/basic_ios/exceptions/char/2.cc: Likewise. - -2004-11-26 Paolo Carlini - - DR 243. get and getline when sentry reports failure [WP] - * include/bits/istream.tcc (istream<>::get, istream<>::getline): - Store a null character only if the array has a non-zero size. - * src/istream.cc (istream::getline, istream::getline): - Likewise. - * testsuite/27_io/basic_istream/get/char/3.cc: New. - * testsuite/27_io/basic_istream/getline/char/6.cc: New. - * testsuite/27_io/basic_istream/getline/wchar_t/6.cc: New. - * docs/html/ext/howto.html: Add an entry for DR 243. - - * testsuite/27_io/basic_istream/getline/wchar_t/1.cc: New. - * testsuite/27_io/basic_istream/getline/wchar_t/2.cc: New. - * testsuite/27_io/basic_istream/getline/wchar_t/3.cc: New. - * testsuite/27_io/basic_istream/getline/wchar_t/4.cc: New. - * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: New. - -2004-11-24 Kelley Cook - - * configure: Regenerate for libtool change. - -2004-11-24 Kelley Cook - - * Makefile.in, aclocal.m4: Regenerate with automake 1.9.3. - * include/Makefile.in: Likewise. - * libmath/Makefile.in: Likewise. - * libsupc++/Makefile.in: Likewise. - * po/Makefile.in: Likewise. - * src/Makefile.in: Likewise. - * testsuite/Makefile.in: Likewise. - -2004-11-24 Jonathan Wakely - - * docs/html/ext/howto.html: Fix incorrect link. - * docs/html/documentation.html: Regenerate. - -2004-11-24 Nathan Myers - - * include/bits/streambuf_iterator.h - (istreambuf_iterator<>::operator++(), operator++(int)): Don't - check unnecessarily the return value of _M_sbuf->sbumpc(). - -2004-11-24 Benjamin Kosnik - - * include/Makefile.am (tr1_headers): Add utility, functional. - * include/Makefile.in: Regenerate. - -2004-11-24 Chris Jefferson - - * include/tr1/tuple(operator!=): Change operator - definition to match (draft) technical report. - (operator>): Same. - (operator<=): Same. - (operator>=): Same. - (ref): Move to include/tr1/functional. - (cref): Same. - (tuple_size): Move to include/tr1/utility. - (tuple_element<,pair>): Same. - * include/tr1/functional: New. - * include/tr1/utility: New. - * testsuite/tr1/6_container/utility/pair.cc: New. - -2004-11-24 Volker Reichelt - - * config/locale/ieee_1003.1-2001/codecvt_specializations.h - (do_out, do_unshift, do_in): Remove redundant typedef. - -2004-11-23 Chris Jefferson - - * testsuite/testsuite_iterators.h: New. - * testsuite/25_algorithms/search_n/iterator.cc: New. - * testsuite/performance/25_algorithms/search_n.cc: New. - -2004-11-23 John David Anglin - - * testsuite/lib/libstdc++.exp: Use new procs in target-libpath.exp. - -2004-11-23 Benjamin Kosnik - - * docs/doxygen/doxygroups.cc: Add std::tr1 namespace. - * docs/doxygen/run_doxygen: Renames for std::tr1. - * docs/doxygen/user.cfg.in: Add cxxabi.h. - * include/bits/*.tcc: Add file markup. - * include/bits/allocator.h: Add link to allocator.html. - * include/bits/atomicity.h: Add file markup. - * include/bits/concurrence.h: Same. - * include/bits/functexcept.h: Same. - * include/ext*: Adjust file markup, remove GCC3 bits. - * include/std/*: Adjust file markup, remove bits about renamed files. - * libsupc++/cxxabi.h: Add file markup. - * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust line numbers. - -2004-11-22 Benjamin Kosnik - - * include/bits/locale_facets.h (isspace, isprint, isupper, - islower, isalpha, isdigit, ispunct, isxdigit, isalnum, isgraph, - toupper, tolower): Add doxygen markup. - (codecvt_byname, ctype_byname, numpunct_byname, collate_byname, - time_get_byname, time_put_byname, moneypunct_byname, - messages_byname): Same. - * include/std/std_fstream.h: Remove superfluous markup. - * include/std/std_sstream.h: Same. - * include/std/std_streambuf.h: Same. - * include/ext/enc_filebuf.h: Adjust markup. - * include/ext/stdio_filebuf.h: Same. - * include/ext/stdio_sync_filebuf.h: Same. - * include/bits/codecvt.h: Same. - * config/os/gnu-linux/ctype_base.h: Same. - * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same. - * include/tr1/array: Add markup. - * include/tr1/tuple: Same. - - * docs/doxygen/run_doxygen: Print arguments. - - * docs/doxygen/user.cfg.in: Tweaks. - -2004-11-19 Jonathan Wakely - - * include/bits/basic_string.h, include/bits/locale_classes.h, - include/bits/valarray_after.h, include/bits/valarray_before.h, - include/ext/stdio_sync_filebuf.h, include/std/std_algorithm.h, - include/std/std_functional.h, include/std/std_memory.h, - include/std/std_numeric.h: Doxygen fixes. - -2004-11-19 Paolo Carlini - - * testsuite/22_locale/time_get/get_date/char/1.cc: In the checks - use, more correctly (and consistently with other testcases) the - return value of the facet (the iterator arguments are by value). - * testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise. - * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise. - * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise. - * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise. - * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise. - * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise. - * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise. - * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise. - * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise. - * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise. - * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise. - -2004-11-19 Jonathan Wakely - - * Makefile.am (doxygen, doxygen-maint, doxygen-man): Remove extra '$' - from host_alias variable. - * Makefile.in: Regenerate. - -2004-11-19 Chris Jefferson - - * include/bits/stl_list.h (list::back, list::back const): - Don't decrement temporary. - -2004-11-19 Paolo Carlini - - * include/bits/stl_deque.h (deque::front, deque::front const, - deque::back, deque::back const): Slightly tweak for stylistic - consistency. - -2004-11-18 Paolo Carlini - - * testsuite/26_numerics/numeric/sum_diff.cc: Use VERIFY. - * testsuite/ext/array_allocator/1.cc: Likewise. - * testsuite/ext/array_allocator/2.cc: Likewise. - * testsuite/ext/array_allocator/3.cc: Likewise. - * testsuite/ext/enc_filebuf/char/13598.cc: Likewise. - -2004-11-18 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::do_get(void*&)): - If the failbit is set, don't set it again. - (money_get<>::_M_extract): Minor stylistic tweak: consistently - with the other functions, take care of eofbit at the end. - -2004-11-18 Paolo Carlini - - DR 434. bitset::to_string() hard to use [Ready] - * include/std/std_bitset.h (to_string): Add three overloads, taking - fewer template arguments. - * docs/html/ext/howto.html: Add an entry for DR 434. - * testsuite/23_containers/bitset/to_string/1.cc: New. - -2004-11-17 Paolo Carlini - - * include/bits/istream.tcc (getline(basic_istream<>&, basic_string<>&, - _CharT)): Remove temporary kludge for libstdc++/15002. - * include/std/std_streambuf.h (class basic_streambuf): Declare - getline(basic_istream<>&, basic_string<>&, _CharT) as friend. - * include/bits/basic_string.h (getline(basic_istream<>&, - basic_string<>&, _CharT)): Declare optimized specializations for - char and wchar_t, using protected members of basic_streambuf. - * src/istream.cc: Define the latter. - -2004-11-16 Jonathan Wakely - - * docs/html/19_diagnostics/howto.html: Document change from - _GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4. - -2004-11-16 Matthias Klose - - * docs/doxygen/user.cfg.in: Set HAVE_DOT to NO. - -2004-11-16 Matthias Klose - - * Makefile.am (doxygen, doxygen-maint, doxygen-man): Use host_alias - instead of build_alias. - * docs/doxygen/run_doxygen: Likewise. - * docs/doxygen/user.cfg.in: Likewise. - * Makefile.in: Regenerate. - -2004-11-15 Paolo Carlini - - * include/bits/streambuf.tcc (__copy_streambufs): Provide - a generic version of the function, not using the protected - members of basic_streambuf. - * include/std/std_streambuf.h (__copy_streambufs): Declare - optimized specializations for char and wchar_t. - * src/streambuf.cc: New file, define the latter. - * src/Makefile.am: Add. - * src/Makefile.in: Regenerate. - -2004-11-15 Matthias Klose - - * docs/doxygen/run_doxygen: Add --build_alias option, - substitute it in docs/doxygen/user.cfg.in. - * docs/doxygen/user.cfg.in: Use build_alias. - * Makefile.am: Pass --build_alias to run_doxygen - * Makefile.in: Regenerate. - -2004-11-15 Benjamin Kosnik - - * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.4. - -2004-11-15 Paolo Carlini - - * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 33. - -2004-11-14 Paolo Carlini - - * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): - Slightly tweak for clarity (also leads to measurably better code). - -2004-11-12 Andrew Pinski - - PR other/14264 - * testsuite/lib/libstdc++.exp: Set LC_ALL and LANG to C. - -2004-11-09 Paolo Carlini - - * include/bits/locale_facets.tcc (time_get<>::do_get_weekday, - time_get<>::do_get_monthname): Absolutely avoid dereferencing - end iterators. - - * include/bits/locale_facets.tcc (time_get<>::_M_extract_name): - Minor tweak. - -2004-11-08 Benjamin Kosnik - Doug Gregor - - PR libstdc++/17664 - * src/debug.cc : Just use one mutex. - -2004-11-08 Benjamin Kosnik - - * configure.ac (libtool_VERSION): To 6:4:0. - * configure: Regenerate. - - * config/linker-map.gnu: Slide new symbols into GLIBCXX_3.4.4. - - * docs/doxygen/user.cfg.in: Add more extension files. - -2004-11-08 Paolo Carlini - - * include/bits/streambuf_iterator.h (class istreambuf_iterator): - Consistently use _M_c to cache the current char, i.e., not only - when operator++(int) is involved; change _M_c to mutable. - (_M_get()): Always save the return value of _M_sbuf->sgetc() into - _M_c. - * testsuite/22_locale/time_get/get_monthname/char/1.cc: Fix - (long standing) typo. - * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise. - * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise. - * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise. - -2004-11-08 Paolo Carlini - - * include/bits/istream.tcc (getline(char_type*, streamsize, - char_type), ignore(streamsize), ignore(streamsize, int_type)): - Restore a generic version of the functions, not using the - protected members of basic_streambuf. - * include/std/std_istream.h (getline(char_type*, streamsize, - char_type), ignore(streamsize), ignore(streamsize, int_type)): - Declare optimized specializations for char and wchar_t. - * src/istream.cc: New file, define the latter. - * src/Makefile.am: Add. - * src/Makefile.in: Regenerate. - -2004-11-07 Paolo Carlini - - * testsuite/performance/27_io/ifstream_getline-2.cc: New. - -2004-11-05 Benjamin Kosnik - - PR libstdc++/17218 - PR libstdc++/17223 - * docs/doxygen/filter: Remove. - * docs/doxygen/filter.sed: Remove. - * docs/doxygen/mainpage.html: Add link to functions. - * docs/doxygen/run_doxygen: Changes due to new source filtering. - * docs/doxygen/user.cfg.in: Update to doxygen 1.3.9.1, tweak. - * include/bits/allocator.h: Tweaks for doxygen. - * include/bits/char_traits.h: Same. - * include/bits/codecvt.h: Same. - * include/bits/concurrence.h: Same. - * include/bits/locale_facets.h: Same. - * include/ext/array_allocator.h: Same. - * include/ext/debug_allocator.h: Same. - * include/ext/malloc_allocator.h: Same. - * include/ext/mt_allocator.h: Same. - * include/ext/new_allocator.h: Same. - * include/ext/pool_allocator.h: Same. - * include/ext/stdio_sync_filebuf.h: Same. - * include/std/std_memory.h: Same. - * include/tr1/array: Same. - * include/tr1/tuple: Same. - * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same. - * config/os/gnu-linux/ctype_base.h: Same. - -2004-11-04 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::do_get(bool&)): - Evaluate __beg == __end the exact strict minimum number of times. - -2004-11-03 Jonathan Wakely - - * include/bits/stl_numeric.h (partial_sum, adjacent_difference): - Avoid dereferencing two times __first in the prologue. - -2004-11-03 Paolo Carlini - - * include/bits/stl_numeric.h: Trivial formatting fixes. - -2004-11-03 Benjamin Kosnik - - * include/bits/c++config: Spacing. - * libsupc++/del_op.cc: Include c++config.h. - * libsupc++/del_opnt.cc: Same. - * libsupc++/del_opv.cc: Same. - * libsupc++/del_opvnt.cc: Same. - * libsupc++/new_op.cc: Same. - * libsupc++/new_opnt.cc: Same. - * libsupc++/new_opv.cc: Same. - * libsupc++/new_opvnt.cc: Same. - -2004-11-03 Aaron W. LaFramboise - - * config/os/bsd/darwin/os_defines.h - (_GLIBCXX_WEAK_DEFINITION): Define. - * include/bits/c++config (_GLIBCXX_WEAK_DEFINITION): Define. - * libsupc++/del_op.cc (operator delete(void *)): Use - _GLIBCXX_WEAK_DEFINITION. - * libsupc++/del_opnt.cc - (operator delete(void *, const std::nothrow_t&)): Same. - * libsupc++/del_opv.cc (operator delete[](void *)): Same. - * libsupc++/del_opvnt.cc - (operator delete[](void *, const std::nothrow_t&)): Same. - * libsupc++/new_op.cc (operator new(std::size_t)): Same. - * libsupc++/new_opnt.cc - (operator new(std::size_t, const std::nothrow_t&)): Same - * libsupc++/new_opv.cc (operator new[](std::size_t)): Same. - * libsupc++/new_opvnt.cc - (operator new[](std::size_t, const std::nothrow_t&)): Same. - -2004-11-02 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_int): - Evaluate *__beg the exact strict minimum number of times; likewise - for __beg != __end; slightly simplify main parsing loop. - -2004-11-02 Benjamin Kosnik - Lothar Werzinger - - PR libstdc++/17664 - * src/debug.cc: Include concurrence, use mutexes. - (_Safe_iterator_base::_M_attach): Here. - (_Safe_iterator_base::_M_detach): Here. - -2004-11-02 Benjamin Kosnik - - PR libstdc++/17922 - * include/bits/ios_base.h : Add enum values. - * testsuite/testsuite_hooks.h (bitmask_operators): Add function. - * testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New. - * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New. - * testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New. - * testsuite/27_io/ios_base/types/iostate/case_label.cc: New. - * testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New. - * testsuite/27_io/ios_base/types/openmode/case_label.cc: New. - * testsuite/27_io/ios_base/types/seekdir/case_label.cc: New. - - * config/io/c_io_stdio.h (__ios_flags): Mark deprecated. - * src/ios.cc: Same. - - * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers. - * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. - -2004-11-01 Momchil Velikov - - PR libstdc++/18185 - * libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled - exceptions. - * testsuite/thread/18185.cc: New. - -2004-11-01 Chris Jefferson - - PR libstdc++/18159 - * include/tr1/tuple (get(pair)): Change occurrences of _I to _Int. - (get(const pair)): Likewise. - -2004-11-01 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): - Evaluate *__beg the exact strict minimum number of times; likewise - for __beg != __end; in the main parsing loop, call ++__beg in two - places only. The former is also a correctness issue, because, - according to the standard (22.2.2.1.2, Stage 2), 'in' shall be - dereferenced only one time for each increment. - -2004-10-31 Benjamin Kosnik - - PR c++/16728 - * testsuite/23_containers/set/modifiers/16728.cc: New. - -2004-10-30 Paolo Carlini - - * include/ext/bitmap_allocator.h (allocate(size_type)): Minor tweak. - - * testsuite/ext/bitmap_allocator/check_delete.cc: New. - * testsuite/ext/bitmap_allocator/check_new.cc: Likewise. - -2004-10-29 Geoffrey Keating - - * configure.host (darwin*): Set os_include_dir to a separate directory - for Darwin. - * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind, - 'darwin'. - * config/locale/darwin/ctype_members.cc: New. - * config/os/bsd/darwin/ctype_base.h: New. - * config/os/bsd/darwin/ctype_inline.h: New. - * config/os/bsd/darwin/ctype_noninline.h: New. - * config/os/bsd/darwin/os_defines.h: New. - - * testsuite/22_locale/locale/cons/12658_thread-1.cc: Only xfail - on Linux. - -2004-10-29 Chris Jefferson - - * include/bit/stl_algo.h (find_first_of(,,,,pred)): - Remove invalid EqualOpConcept. - * testsuite/25_algorithms/find_first_of/concept_check_1.cc: New. - -2004-10-29 Benjamin Kosnik - - * testsuite/testsuite_allocator.h (check_delete): New. - (check_new): Simplify. - * testsuite/ext/array_allocator/check_delete.cc: New. - * testsuite/ext/array_allocator/check_new.cc: Simplify. - * testsuite/ext/debug_allocator/check_delete.cc: New. - * testsuite/ext/debug_allocator/check_new.cc: Simplify. - * testsuite/ext/malloc_allocator/check_delete.cc: New. - * testsuite/ext/malloc_allocator/check_new.cc: Simplify. - * testsuite/ext/mt_allocator/check_delete.cc: New. - * testsuite/ext/mt_allocator/check_new.cc: Simplify. - * testsuite/ext/new_allocator/check_delete.cc: New. - * testsuite/ext/new_allocator/check_new.cc: Simplify. - * testsuite/ext/pool_allocator/check_delete.cc: New. - * testsuite/ext/pool_allocator/check_new.cc: Simplify. - -2004-10-28 Chris Jefferson - - PR libstdc++/18159 - * include/tr1/tuple: Fix, change formatting. - -2004-10-28 Benjamin Kosnik - - * include/ext/mt_allocator.h (__common_pool_policy): Add template - template parameter for pool class type. - (__per_type_pool_policy): Same. - (__mt_allocator): Don't inherit policy. Qualify policy_type calls. - * testsuite/ext/mt_allocator/check_deallocate_null.cc: Fix. - * testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: Same. - * 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/mt_allocator/instantiate.cc: Same. - * testsuite/ext/mt_allocator/tune-1.cc: Same. - * testsuite/ext/mt_allocator/tune-2.cc: Same. - * testsuite/ext/mt_allocator/tune-3.cc: Same. - * testsuite/ext/mt_allocator/tune-4.cc: Same. - -2004-10-28 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): - Cache *__beg in __c when parsing exponent sign too. - (num_get<>::do_get(..., bool&)): Cache *__beg. - (money_get<>::_M_extract)): Likewise, in money_base::value. - -2004-10-27 Paolo Carlini - - * include/bits/basic_string.h (assign(const basic_string&)): - Move out of line... - * include/bits/basic_string.tcc: ... here. - -2004-10-27 Paolo Carlini - - * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe): - Move out of line... - * include/bits/basic_string.tcc: ... here. - -2004-10-26 Paolo Carlini - - * include/bits/basic_string.h (append(const basic_string&), - append(size_type, _CharT)): Move out of line... - * include/bits/basic_string.tcc: ... here. - -2004-10-26 Paolo Carlini - - * include/bits/basic_string.h (erase(size_type, size_type), - erase(iterator), erase(iterator, iterator)): Call _M_mutate - instead of _M_replace_safe, equivalent when the fourth argument - is zero and simpler. - -2004-10-26 Benjamin Kosnik - - * include/ext/array_allocator.h (array::allocate): Check for valid - array object, use its size member function directly. - * testsuite/ext/array_allocator/3.cc: New. - * docs/html/20_util/allocator.html: Add docs. - -2004-10-25 Geoffrey Keating - - * configure.host (darwin*): Build libstdc++ single module - and flat namespace. - * libsupc++/new_op.cc (new): Make weak. - * libsupc++/new_opnt.cc (new): Make weak. - * libsupc++/new_opv.cc (new): Make weak. - * libsupc++/new_opvnt.cc (new): Make weak. - * libsupc++/delete_op.cc (delete): Make weak. - * libsupc++/delete_opnt.cc (delete): Make weak. - * libsupc++/delete_opv.cc (delete): Make weak. - * libsupc++/delete_opvnt.cc (delete): Make weak. - -2004-10-25 Benjamin Kosnik - - * testsuite/Makefile.am (GLIBCXX_INCLUDES): Add. - (AUTOMAKE_OPTIONS): Add nostdinc. - * testsuite/Makefile.in: Regenerate. - * scripts/testsuite_flags.in (build-includes): Remove redundant - search for libsupc++. - * fragment.am: Clean. - -2004-10-25 Benjamin Kosnik - - * include/Makefile.am (tr1_headers): Add tuple. - * include/Makefile.in: Regenerate. - -2004-10-25 Chris Jefferson - - * include/tr1/tuple: Implementation of tuple from library TR. - * testsuite/tr1/6_containers/tuple/tuple_element.cc: New. - * testsuite/tr1/6_containers/tuple/tuple_size.cc: New. - * testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc: - New. - * testsuite/tr1/6_containers/tuple/cons/assignment.cc: New. - * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: New. - * testsuite/tr1/6_containers/tuple/cons/constructor.cc: New. - * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc: - New. - * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: New. - * testsuite/tr1/6_containers/tuple/element_access/get.cc: New. - -2004-10-25 Paolo Carlini - - * include/bits/basic_string.h (_Rep::_M_is_safe): Move to - basic_string as _M_disjunct, adjust to take only __s. - * include/bits/basic_string.tcc: Adjust consistently callers. - -2004-10-25 Paolo Carlini - - * include/bits/basic_string.tcc (assign(const _CharT*, size_type)): - Adjust bit missing from the previous commit. - -2004-10-25 Eric Botcazou - - PR other/18138 - * testsuite/lib/libstdc++.exp: Accept more than one multilib libgcc. - -2004-10-25 Paolo Carlini - - * include/bits/basic_string.h (_Rep::_M_is_safe, _M_check_length, - _M_move, _M_copy, _M_assign): New, use througout. - (operator+=(_CharT)): Define in terms of push_back. - (append(const basic_string&)): Define here, inline, and simplify, - don't use the full _M_replace_safe. - (append(size_type, _CharT)): Likewise, don't use _M_replace_aux. - (push_back): Likewise. - (assign(const basic_string&)): Define here, inline. - * include/bits/basic_string.tcc (append(const _CharT* s, size_type): - Fix: when s points inside the _Rep, upon reallocation (reserve) we - were copying from deallocated memory. - (append(const basic_string&, size_type, size_type)): Simplify, - don't use _M_replace_safe. - (replace(size_type, size_type, const _CharT*, size_type)): Slightly - tweak. - (reserve): Likewise. - * testsuite/21_strings/basic_string/append/char/2.cc: New. - * testsuite/21_strings/basic_string/append/char/3.cc: Likewise. - * testsuite/21_strings/basic_string/append/wchar_t/2.cc: Likewise. - * testsuite/21_strings/basic_string/append/wchar_t/3.cc: Likewise. - - * testsuite/21_strings/basic_string/assign/char/3.cc: Remove junk. - * testsuite/21_strings/basic_string/assign/wchar_t/3.cc: Likewise. - -2004-10-23 Andrew Pinski - - * testsuite/ext/mt_allocator/deallocate_global-2.c: - s/value_t/value_type/. s/traits_t/traits_type/. - s/policy_t/policy_type/. s/allocator_t/allocator_type/. - s/string_t/string_type/. s/list_t/list_type/. - * testsuite/ext/mt_allocator/deallocate_global-4.cc: Likewise. - * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Likewise. - * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Likewise. - * testsuite/ext/mt_allocator/deallocate_local-2.cc: Likewise. - * testsuite/ext/mt_allocator/deallocate_local-4.cc: Likewise. - * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Likewise. - * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Likewise. - -2004-10-21 Benjamin Kosnik - - * include/tr1/array (array): Make safe for zero-sized arrays. - (array::end): Return one past the end. - (array::at): Use __throw_out_of_range, include functexcept.h. - (operator==): Implement. - (operator!=): Same. - (operator<): Same. - (operator>): Same. - (operator>=): Same. - (operator<=): Same. - * testsuite/tr1/6_containers/array/capacity/(empty.cc, - max_size.cc, size.cc): New. - * testsuite/tr1/6_containers/array/comparison_operators/(equal.cc, - greater.cc, greater_or_equal.cc, less.cc, less_or_equal.cc, - not_equal): New. - * testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc: - New. - * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc: - New. - * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc: New. - * testsuite/tr1/6_containers/array/requirements/(contiguous.cc, - instantiate, typedefs, zero_size_arrays): New. - -2004-10-21 Paolo Carlini - Benjamin Kosnik - - * include/bits/basic_string.h (_M_set_length_and_sharable): New. - * include/bits/basic_string.tcc (_S_construct, assign(const _CharT*, - size_type), _M_mutate, _M_clone): Use it. - (_Rep::_S_create): Don't set/call _M_length/_M_set_sharable here. - -2004-10-21 Paolo Carlini - Dhruv Matani - Nathan Myers - - * include/bits/vector.tcc (_M_insert_aux, _M_fill_insert, - _M_range_insert): Check at the outset that we are not trying - to exceed max_size, then deal properly with __len overflows. - * testsuite/23_containers/vector/modifiers/insert/1.cc: New. - - * testsuite/testsuite_allocator.h: Remove redundant include. - -2004-10-20 Paolo Carlini - - * include/ext/bitmap_allocator.h (allocate): Throw std::bad_alloc - when n > max_size(). - * include/ext/malloc_allocator.h (allocate): Likewise. - * include/ext/mt_allocator.h (allocate): Likewise. - * include/ext/new_allocator.h (allocate): Likewise. - * include/ext/array_allocator.h: Use __throw_bad_alloc(). - * include/ext/pool_allocator.h: Use __builtin_expect. - * testsuite/ext/array_allocator/check_allocate_max_size.cc: New. - * testsuite/ext/bitmap_allocator/check_allocate_max_size.cc: Likewise. - * testsuite/ext/malloc_allocator/check_allocate_max_size.cc: Likewise. - * testsuite/ext/mt_allocator/check_allocate_max_size.cc: Likewise. - * testsuite/ext/new_allocator/check_allocate_max_size.cc: Likewise. - * testsuite/ext/pool_allocator/check_allocate_max_size.cc: Likewise. - * testsuite/testsuite_allocator.h (check_allocate_max_size): New test. - -2004-10-19 Paolo Carlini - - * testsuite/performance/20_util/allocator/list_sort_search.cc: - Include . - * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. - -2004-10-18 Paolo Carlini - - * include/bits/basic_string.tcc (_M_mutate): Do not reallocate - unnecessarily when _M_rep() == &_S_empty_rep() and __new_size - == capacity() (== 0): is ok to just leave everything unchanged. - - * include/bits/basic_string.h: Minor formatting fixes. - * include/bits/basic_string.tcc: Likewise. - -2004-10-17 Benjamin Kosnik - - * include/ext/mt_allocator.h (__pool::_M_get_align): New. - (__mt_alloc::allocate): Use it. - * src/mt_allocator.cc (__pool::_M_reclaim_block): Use it. - (__pool::_M_reserve_block): Simplify block allocation. - -2004-10-17 Dhruv Matani - Paolo Carlini - - * include/ext/bitmap_allocator.h: Change unsigned int -> size_t: this - makes the code 64-bit correct and also fixes (together with using at - the beginning a bitmap 2 * size_t bytes wide) alignment issues: now - 8 is guaranteed, easily tunable to 16 via _BALLOC_ALIGN_BYTES. - Fix pthread-rope7.cc fail by nulling out __mini_vector<> destructor. - * src/bitmap_allocator.cc: Change to size_t. - * config/linker-map.gnu: Adjust. - -2004-10-16 Benjamin Kosnik - - * include/tr1/array: Don't use layout_type. - -2004-10-16 Sashan Govender - - * include/tr1/array (array::end const): Fix casting from iterator - to const_iterator. - -2004-10-15 Paolo Carlini - - * include/ext/bitmap_allocator.h: Qualify ::operator delete. - * src/bitmap_allocator.cc: Likewise. - * src/mt_allocator.cc: Use ::operator delete, not delete, - consistently with ::operator new. - - * include/ext/bitmap_allocator.h (deallocate): Check for null - pointer. - * testsuite/ext/bitmap_allocator/check_deallocate_null.cc: New. - * testsuite/testsuite_allocator.h (check_deallocate_null): Add test. - -2004-10-14 Benjamin Kosnik - - * include/ext/mt_allocator.h (__mt_alloc::deallocate): Check for - null pointer. - * include/ext/pool_allocator.h (debug_allocator::deallocate): - Check pointer value. - * include/ext/debug_allocator.h (debug_allocator::deallocate): - Throw exceptions, don't abort. - * include/ext/array_allocator.h - (array_allocator_base::deallocate): Remove unused parameters. - * testsuite/testsuite_allocator.h (check_deallocate_null): New. - * testsuite/ext/mt_allocator/check_deallocate_null.cc: New. - * testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: New. - * testsuite/ext/array_allocator/check_deallocate_null.cc: New. - * testsuite/ext/debug_allocator/check_deallocate_null.cc: New. - * testsuite/ext/malloc_allocator/check_deallocate_null.cc: New. - * testsuite/ext/new_allocator/check_deallocate_null.cc: New. - * testsuite/ext/pool_allocator/check_deallocate_null.cc: New. - - * testsuite/testsuite_allocator.h (check_new): Add instance argument. - * testsuite/ext/array_allocator/check_new.cc: New. - -2004-10-14 Paolo Carlini - - * include/ext/bitmap_allocator.h (bitmap_allocator::_Alloc_block): - Rename __unused to __M_unused. - -2004-10-14 Benjamin Kosnik - - * testsuite/ext/headers.cc: Add includes, compile only. - * testsuite/ext/hash_map.cc: Move to... - * testsuite/ext/hash_map/1.cc: ...here. - * testsuite/ext/14648.cc: Move to... - * testsuite/ext/hash_map/14648.cc: ...here. - * testsuite/ext/hash_map/instantiate.cc: Add. - * testsuite/ext/hash_set.cc: Move to... - * testsuite/ext/hash_set/1.cc: ...here. - * testsuite/ext/hash_set_explicit_instantiation.cc: Move to... - * testsuite/ext/hash_set/instantiate.cc: ...here. - * testsuite/ext/hash_check_construct_destroy.cc: Move to... - * testsuite/ext/hash_set/check_construct_destroy.cc: ...here. - * testsuite/ext/slist_check_construct_destroy.cc: Move to... - * testsuite/ext/slist/check_construct_destroy.cc: ...here. - * testsuite/ext/slist_explicit_instantiation.cc: Move to... - * testsuite/ext/slist/instantiate.cc: ...here. - -2004-10-14 Benjamin Kosnik - - * include/ext/mt_allocator.h: Tweaks. - * src/mt_allocator.cc: Same. - -2004-10-14 Dhruv Matani - - * ext/bitmap_allocator.h: Clean-up add/remove functions. - * src/bitmap_allocator.cc: New file. Contains the out-of-line - function definitions, static initialization of variables, and - explicit instantiations needed for the allocator. - * src/Makefile.am: Add. - * src/Makefile.in: Regenerate. - * config/linker.map.gnu: Add the necessary symbols. - -2004-10-13 Paolo Carlini - - * include/bits/basic_string.tcc (_S_create): Use consistently - the exponential policy, simplify. - * testsuite/performance/21_strings/string_append_2.cc: New. - - * include/ext/array_allocator.h (allocate): Fix bad_alloc check. - * testsuite/ext/array_allocator/2.cc: Fix wrt 64-bit archs (in - that case sizeof(_Rep) == 24). - -2004-10-12 Paolo Carlini - - PR libstdc++/17948 - * include/bits/stl_tree.h (erase(iterator, iterator)): Revert - wrong commit of 2004-10-07. - -2004-10-12 Scott Snyder - - PR libstdc++/17948 - * testsuite/23_containers/set/modifiers/17948.cc: New. - -2004-10-11 Benjamin Kosnik - - * include/bits/stl_deque.h: Correct for over-long lines. - -2004-10-11 Benjamin Kosnik - - PR libstdc++/17937 - * include/ext/mt_allocator.h (__pool::_M_destroy): New. - * src/mt_allocator.cc (__pool::~__pool): Change definitions to - _M_destroy. - * acconfig.h: Remove _GLIBCXX_USE___CXA_ATEXIT. - * acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): Remove. - * configure.ac: Remove call to GLIBCXX_ENABLE_CXA_EXIT. - * configure: Regenerate. - * config/linker-map.gnu: Tweak exports. - * docs/html/ext/mt_allocator.html: Update docs. - * testsuite/ext/mt_allocator/deallocate_global-2.cc: Fix. - * testsuite/ext/mt_allocator/deallocate_global-4.cc: Fix. - * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Fix. - * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Fix. - * testsuite/ext/mt_allocator/deallocate_local-2.cc: Fix. - * testsuite/ext/mt_allocator/deallocate_local-4.cc: Fix. - * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Fix. - * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Fix. - -2004-10-11 Benjamin Kosnik - - PR libstdc++/16614 continued. - * include/ext/mt_allocator.h - (__per_type_pool_policy::_S_get_pool): Use saner defaults based on - specific type characteristics. - (__pool_base): Add constructor that takes a _Tune argument. - (__pool): Same. - * testsuite/ext/mt_allocator/tune-2.cc: Adjust default. - * testsuite/ext/mt_allocator/tune-4.cc: Same. - * testsuite/ext/mt_allocator/tune-3.cc: Same. - -2004-10-11 Joachim Kuebart - Paolo Carlini - - * src/pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk): - Deal properly with exceptions thrown by ::operator new(size_t). - * testsuite/ext/pool_allocator/allocate_chunk.cc: New. - - * include/ext/pool_allocator.h: Include . - -2004-10-10 Benjamin Kosnik - - * include/bits/functexcept.h: Add guards. - - * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Tweak test. - * configure: Regenerate. - -2004-10-10 Paolo Carlini - - * config/locale/gnu/monetary_members.cc (_S_construct_pattern): - Give __ret a default value, thus avoiding spurious warnings. - - * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Open either - words or linux.words, otherwise exit. - * testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak. - -2004-10-09 Paolo Carlini - - * include/std/std_memory.h (__get_temporary_buffer): Don't use - INT_MAX, prefer numeric_limits::max(), ok on 64-bit - platforms too. - * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust dg-error - line numbers. - -2004-10-08 Benjamin Kosnik - - * acconfig.h: Add _GLIBCXX_USE___CXA_ATEXIT. - * acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): New. - * configure.ac: Call GLIBCXX_ENABLE_CXA_EXIT. - * configure: Regenerate. - * src/mt_allocator.cc (__pool::~__pool): Make conditional on - _GLIBCXX_USE___CXA_ATEXIT macro. - * docs/html/ext/mt_allocator.html: Add note about deallocation. - * testsuite/ext/mt_allocator/deallocate_local-2.cc: Guard checks - with _GLIBCXX_USE___CXA_ATEXIT. - * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same. - * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same. - * testsuite/ext/mt_allocator/deallocate_global-4.cc: Same. - * testsuite/ext/mt_allocator/deallocate_global-2.cc: Same. - * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same. - * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same. - * testsuite/ext/mt_allocator/deallocate_local-4.cc: Same. - -2004-10-07 Phil Edwards - - * testsuite/lib/libstdc++.exp: Update list of undefined functions. - -2004-10-07 Paolo Carlini - - * include/bits/list.tcc (operator=): Avoid iterator postincrement. - * include/bits/stl_tree.h (erase(iterator, iterator)): Likewise. - -2004-10-07 Benjamin Kosnik - - * include/tr1: New. - * include/tr1/array: New. - * include/Makefile.am (tr1_headers): New. - (stamp-tr1): New. - (install-headers): New. - (allstamped): Add stamp-tr1. - - * include/ext/array_allocator.h: New. - * include/Makefile.am: Add. - * include/Makefile.in: Regenerate. - * testsuite/ext/array_allocator/1.cc: New. - * testsuite/ext/array_allocator/2.cc: New. - -2004-10-07 Richard Earnshaw - - * testsuite/lib/libstdc++.exp (libstdc++_exit): New proc. - -2004-10-07 Roger Sayle - - PR libstdc++/17850 - * configure.ac: Newlib does not provide strtold. - * configure: Regenerate. - -2004-10-06 Benjamin Kosnik - - * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread. - (GLIBCXX_CONFIGURE_TESTSUITE): Use it. - * configure: Regenerated. - * testsuite/Makefile.am (CLEANFILES): Add TEST for - check-performance executables. - (stamp_thread): New. - (all-local): Use it. - * testsuite/Makefile.in: Regenerate. - * scripts/create_testsuite_files: Filter thread tests. - - * testsuite/thread/pthread1.cc: Remove macro conditionals: this - file will only be run by thread enabled configurations. - * testsuite/thread/pthread7-rope.cc: Same, add rope_type typedef. - * testsuite/thread/pthread6.cc: Same. - * testsuite/thread/pthread5.cc: Same. - * testsuite/thread/pthread4.cc: Same. - * testsuite/thread/pthread3.cc: Same. - * testsuite/thread/pthread2.cc: Same. - - * testsuite/ext/mt_allocator/instantiate.cc: Add in __GTHREADS guard. - * testsuite/ext/mt_allocator/deallocate_global-1.cc: Move to... - * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: ...here. - * testsuite/ext/mt_allocator/deallocate_global-3.cc: Move to... - * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: ...here. - * testsuite/ext/mt_allocator/deallocate_local-1.cc: Move to... - * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: ...here. - * testsuite/ext/mt_allocator/deallocate_local-3.cc: Move to... - * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: ...here. - -2004-10-06 Benjamin Kosnik - Paolo Carlini - - PR libstdc++/17780 - * src/mt_allocator.cc (__pool::_M_reserve_block): Revert - to old locking order. - -2004-10-06 Paolo Carlini - - * include/std/std_sstream.h (_M_sync): When the caller is - setbuf, don't trust _M_string.capacity() to be the size of - the buffer area, use _M_string.size() in this case. - * testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: New. - * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise. - - * include/bits/sstream.tcc (overflow): Avoid calling string::assign - unnecessarily when the current _M_string is empty. - -2004-10-06 Paolo Carlini - - * include/bits/stl_algo.h (__reverse(bidirectional_iterator_tag)): - Avoid iterator postincrement. - (__rotate): Likewise. - - * include/bits/stl_algo.h: Minor formatting tweaks. - -2004-10-06 Christopher Jefferson - - * include/bits/stl_algo.h (__reverse(random_access_iterator_tag)): - Avoid iterator postincrement; fix swapping middle element with - itself on odd-length inputs. - -2004-10-05 Benjamin Kosnik - - PR libstdc++/17780 - * include/ext/mt_allocator.h (__pool_base::_Tune): Add default - options as compile-time constant enums. - (__pool_base::_Tune::is_default): New. - (__pool_base::_Block_address): New. - (__pool_base): Rearrange data members. - (__pool::_M_reserve_memory): To _M_reserve_block. - (__pool::_M_reclaim_memory): To _M_reclaim_block. - (__pool::_Bin_record): Add _Block_address data member. - (__pool): Add _M_thread_freelist_initial. - (__pool::~__pool): Declare. - (__common_pool_policy): Move static data member to... - (__common_pool_policy::_S_get_pool): ...here, make static local. - (__per_type_pool_policy): Move static data member to... - (__per_type_pool_policy::_S_get_pool): ...here, make static local. - (__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool. - Remove static member definitions. Use define for __default_policy. - * src/mt_allocator.cc: Same. - * config/linker-map.gnu: Don't export _S_get_pool. Renames. - * testsuite/ext/new_allocator: New. - * testsuite/ext/new_allocator/instantiate.cc: New. - * testsuite/ext/new_allocator/check_new.cc: New. - * testsuite/ext/new_allocator/deallocate_global.cc: New. - * testsuite/ext/new_allocator/deallocate_local.cc: New. - * testsuite/ext/mt_allocator/instantiate.cc: Instantiate all - template arguments. - * testsuite/ext/mt_allocator/deallocate_global-1.cc: New. - * testsuite/ext/mt_allocator/deallocate_global-2.cc: New. - * testsuite/ext/mt_allocator/deallocate_global-3.cc: New. - * testsuite/ext/mt_allocator/deallocate_global-4.cc: New. - * testsuite/ext/mt_allocator/deallocate_local-1.cc: New. - * testsuite/ext/mt_allocator/deallocate_local-2.cc: New. - * testsuite/ext/mt_allocator/deallocate_local-3.cc: New. - * testsuite/ext/mt_allocator/deallocate_local-4.cc: New. - * testsuite/ext/mt_allocator/deallocate.cc: New. - * testsuite/ext/malloc_allocator/deallocate.cc: New. - * testsuite/ext/malloc_allocator/deallocate_global.cc: New. - * testsuite/ext/malloc_allocator/deallocate_local.cc: New. - -2004-10-05 Ulrich Weigand - - * configure.host (abi_baseline_pair): Define for s390-*-linux* and - s390x-*-linux*. - * config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols. - * config/abi/s390x-linux-gnu/baseline_symbols.txt: New file. - -2004-10-05 Christopher Jefferson - - * include/bits/stl_algobase.h (iter_swap): delegate to swap via - __iter_swap when iterator's value_types are equal. - (struct __iter_swap): New. - -2004-10-04 Benjamin Kosnik - - * configure.ac (libtool_VERSION): To 6:3:0. - * configure: Regnerate. - * testsuite/testsuite_abi.cc (check_version): Add 3.4.3. - -2004-10-04 Roger Sayle - Eric Botcazou - - PR libstdc++/17505 - * config/linker-map.gnu: Synchronize the current list of stub - functions from libmath. - -2004-10-03 Roger Sayle - - * config/locale/generic/c_locale.cc (__convert_to_v): Use - _GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof. - Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99 - to check for presence of strtold. - -2004-10-03 Paolo Carlini - - * include/bits/stl_list.h: Trivial formatting fixes. - * include/bits/stl_tree.h: Likewise. - -2004-10-03 Paolo Carlini - - * include/bits/sstream.tcc (seekpos): In case of success, just - return __sp. - -2004-10-01 Paolo Carlini - - * include/bits/sstream.tcc (pbackfail): Implement correctly - 27.7.1.3/2, bullet 2: if mode & ios_base::out is false do not - write in the buffer. - * testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: New. - * testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise. - * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise. - * testsuite/27_io/basic_istream/putback/char/1.cc: Tweak consistently. - -2004-10-01 Paolo Carlini - - * include/bits/sstream.tcc (seekpos): Minor rearrangement of two - conditionals consistently with seekoff. - * include/std/std_sstream.h (setbuf): Avoid a string temporary. - (_M_sync): Simplify a bit, clean-up comment. - -2004-09-30 Paolo Carlini - - PR libstdc++/10975 (DR 453) - * include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0 - and __off == 0. - * docs/html/ext/howto.html: Add an entry for DR 453. - * testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New. - * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise. - * testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently. - * testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise. - * testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise. - * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and - move to... - * testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here. - * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and - move to... - * testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here. - -2004-09-29 Paolo Carlini - - * include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)): - Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1. - (str()): Slightly tweak, protect from pptr() == 0. - (_M_update_egptr()): Likewise. - * include/bits/sstream.tcc (ssekoff, seekpos): In order to check - for an empty buffer use __beg instead of _M_string.capacity(). - * testsuite/27_io/basic_stringbuf/cons/char/1.cc: New. - * testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise. - - * testsuite/27_io/basic_filebuf/cons/char/1.cc: New. - * testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_streambuf/cons/char/1.cc: Update. - * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise. - -2004-09-29 Paolo Carlini - Benjamin Kosnik - - * testsuite/testsuite_io.h (class constraint_buf): New, extended - and templatized version of constraint_filebuf; add typedefs for - streambuf/stringbuf/filebuf and wchar_t counterparts. - -2004-09-28 Paolo Carlini - - PR libstdc++/16612 - * include/bits/basic_string.h (_M_dispose, _M_refcopy, - basic_string()): When _GLIBCXX_FULLY_DYNAMIC_STRING is defined, - don't deal with _S_empty_rep. - * include/bits/basic_string.tcc (_S_construct, _M_destroy, - _M_leak_hard, _M_mutate): Likewise. - * acinclude.m4 (GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING): New. - * acconfig.h: Add corresponding undef. - * configure.ac: Use GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING. - * docs/html/configopts.html: Document --enable-fully-dynamic-string. - * configure: Regenerate. - * config.h.in: Likewise. - -2004-09-28 Benjamin Kosnik - Paolo Carlini - - * testsuite/21_strings/basic_string/operations/char/1.cc: New. - * testsuite/21_strings/basic_string/operations/wchar_t/1.cc: New. - * testsuite/21_strings/basic_string/element_access/char/empty.cc: New. - * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc: - New. - -2004-09-28 Paolo Carlini - - * README: Remove obsolete entry about include/c_shadow. - -2004-09-24 H.J. Lu - - PR libstdc++/17469 - * testsuite/lib/libstdc++.exp: Don't use global ld_library_path. - -2004-09-24 Paolo Carlini - - * src/localename.cc (locale::locale(const char*)): Minor tweaks: - rename a variable, move an assignment. - (locale::_Impl::_Impl(const char*, size_t)): Likewise, minor tweak. - -2004-09-24 Paul Brook - - * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL more arm - simulator targets. - * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto. - * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Ditto. - * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Ditto. - * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Ditto. - * testsuite/ext/stdio_filebuf/char/10063-2.cc: Ditto. - * testsuite/ext/stdio_filebuf/char/10063-3.cc: Ditto. - -2004-09-23 Zack Weinberg - - * testsuite/20_util/memory/auto_ptr/assign_neg.cc - * testsuite/23_containers/map/operators/1_neg.cc - * testsuite/23_containers/set/operators/1_neg.cc: - Update locations and/or regexps of dg-error markers. - -2004-09-23 P.J. Darcy - - * include/Makefile.am (thread_host_headers): Add gthr-tpf.h. - Add rule to build ${host_builddir}/gthr-tpf.h. - * include/Makefile.in: Regenerate. - -2004-09-23 Paolo Carlini - Magnus Fromreide - - * include/bits/boost_concept_check.h (struct _SequenceConcept): - Remove wrong requirement, i.e., not present in Table 67. - -2004-09-21 Paolo Carlini - - PR libstdc++/12882 (cont) - * acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too. - * configure: Regenerate. - * config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When - _GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non - trivial showmanyc for large files too. - -2004-09-17 Jonathan Wakely - - * include/bits/stl_algo.h (remove): Remove too restrictive - concept-check. - -2004-09-17 Paolo Carlini - - * include/bits/fstream.tcc (xsgetn): Slightly tweak conditional, - as per Nathan's original suggestion. - -2004-09-17 Paolo Carlini - - * testsuite/ext/mt_allocator/tune-1.cc: Use VERIFY, clean - up a bit. - * testsuite/ext/mt_allocator/tune-2.cc: Likewise. - * testsuite/ext/mt_allocator/tune-3.cc: Likewise. - * testsuite/ext/mt_allocator/tune-4.cc: Likewise. - -2004-09-17 Paolo Carlini - Andrea Arcangeli - - * config/io/basic_file_stdio.cc (__basic_file<>::close)): Don't - call unnecessarily sync, that is fflush: the library, since 3.4.0 - does not use buffered fread/fwrite. - * include/bits/fstream.tcc (basic_filebuf<>::overflow): Likewise. - -2004-09-15 Mark Mitchell - - * config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type): - Define. - * config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type): - Define. - * libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type. - (__cxa_vec_new): Use it. - (__cxa_vec_new2): Likewise. - (__cxa_vec_new3): Likewise. - (__cxa_vec_cdtor): Likewise. - (__cxa_vec_cctor): Likeiwse. - (__cxa_vec_dtor): Likewise. - (__cxa_vec_cleanup): Likewise. - (__cxa_vec_delete2): Likewise. - (__cxa_vec_delete3): Likewise. - * libsupc++/vec.cc (__cxa_vec_new): Likewise. - (__cxa_vec_new2): Likewise. - (__cxa_vec_new3): Likewise. - (__cxa_vec_cdtor): Likewise. - (__cxa_vec_cctor): Likeiwse. - (__cxa_vec_dtor): Likewise. - (__cxa_vec_cleanup): Likewise. - (__cxa_vec_delete2): Likewise. - (__cxa_vec_delete3): Likewise. - (__aeabi_vec_ctor_nocookie_nodtor): New function. - (__aeabi_vec_ctor_cookie_nodtor): Likewise. - (__aeabi_vec_cctor_nocookie_nodtor): Likewise. - (__aeabi_vec_new_cookie_noctor): Likewise. - (__aeabi_vec_new_nocookie): Likewise. - (__aeabi_vec_new_cookie_nodtor): Likewise. - (__aeabi_vec_new_cookie): Likewise. - (__aeabi_vec_dtor): Likewise. - (__aeabi_vec_dtor_cookie): Likewise. - (__aeabi_vec_delete): Likewise. - (__aeabi_vec_delete3): Likewise. - (__aeabi_vec_delete3_nodtor): Likewise. - (__aeabi_atexit): Likewise. - -2004-09-14 Nathan Myers - - * include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix - for 11722: copy can replace move; the common case is __avail == 0. - -2004-09-14 Paolo Carlini - - * include/bits/cpp_type_traits.h: Rename __is_trivially_copyable - to __is_scalar, more clear and consistent with "tr1" naming. - * include/bits/stl_algobase.h: Update consistently throughout. - -2004-09-13 Paolo Carlini - - PR libstdc++/11722 - * include/std/std_fstream.h (xsgetn): Declare only. - * include/bits/fstream.tcc (xsgetn): Define, optimize for the - always_noconv() case: when __n > __buflen, copy the available - buffer and issue a direct read. - * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New. - - * include/bits/fstream.tcc (xsputn): Minor tweak, reorder a - conditional. - -2004-09-13 Hans-Peter Nilsson - - * testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call - libstdc++_maybe_build_wrapper instead of using local code. - -2004-09-08 Benjamin Kosnik - - * config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports. - -2004-09-03 Jan Beulich - - * crossconfig.m4: Add NetWare as a target. - * configure: Regenerate. - -2004-09-02 Mark Mitchell - - * libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already - defined. - -2004-09-02 Benjamin Kosnik - Simon Richter - - PR libstdc++/16715 - * include/bits/istream.tcc: Add extern template for iostream - char and wchar_t instantiations. - -2004-09-02 Benjamin Kosnik - Leland Wang - - PR libstdc++/17259 - * include/ext/ropeimpl.h (rope::_S_compare): Use - _Rope_constants::_S_leaf. - -2004-09-02 Benjamin Kosnik - - PR libstdc++/16848 - * include/Makefile.am (ext_headers): Remove demangle.h. - * include/Makefile.in: Regenerate. - * include/ext/demangle.h: Remove. - -2004-09-01 Benjamin Kosnik - - PR libstdc++/16614 - * include/ext/mt_allocator.h (__mt_base): Not type dependent, - split into.. - (__pool): New, specialize. - (__common_pool): New, static bits here. - (__per_type_pool): New, and here. - (__mt_alloc_base): New. - (__mt_alloc): Add template parameter, inherit from it. - * src/allocator.cc: Split this... - * src/allocator-inst.cc: And this... - * src/pool_allocator.cc: ...into this. - * src/mt_allocator.cc: ... and this. Add definitions for - __mt_base. - * src/Makefile.am (sources): Split allocator.cc to - pool_allocator.cc and mt_allocator.cc. - * src/Makefile.in: Regenerate. - * config/linker-map.gnu: Add symbols. - * docs/html/ext/mt_allocator.html: Document new design. - * testsuite/ext/mt_allocator/tune-1.cc: New. - * testsuite/ext/mt_allocator/tune-2.cc: New. - * testsuite/ext/mt_allocator/tune-3.cc: New. - * testsuite/ext/mt_allocator/tune-4.cc: New. - - * testsuite/testsuite_allocator.h (__gnu_test::check_new): New. - * testsuite/ext/allocators.cc: Use check_new, split into... - * testsuite/ext/mt_allocator/check_new.cc: this. - * testsuite/ext/pool_allocator/check_new.cc: this. - * testsuite/ext/malloc_allocator/check_new.cc: this. - * testsuite/ext/debug_allocator/check_new.cc: this. - * testsuite/ext/mt_allocator/instantiate.cc: this. - * testsuite/ext/pool_allocator/instantiate.cc: this. - * testsuite/ext/malloc_allocator/instantiate.cc: this. - * testsuite/ext/debug_allocator/instantiate.cc: this. - -2004-08-30 Phil Edwards - - * docs/html/install.html: Update locales list (from Paolo). - Remove other redundant information and point to the GCC install - documentation. - -2004-08-30 Benjamin Kosnik - - * include/ext/pool_allocator.h: Rename __pool_base to - __pool_alloc_base. - * src/allocator.cc: Same. - * config/linker-map.gnu: Same. - -2004-08-30 Paolo Carlini - Kenneth C. Schalk - - PR libstdc++/17215 - * config/io/basic_file_stdio.cc (__basic_file::close()): - Check the return value of fclose/sync, loop on EINTR. - (__basic_file::sys_open): Likewise, for sync. - -2004-08-29 Paolo Carlini - - * include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format, - case 'S'): Allow for at least one leap-second (as per C99, 7.23.1 - and 7.23.3.5), two if !_GLIBCXX_USE_C99. - * testsuite/22_locale/time_get/get_time/char/4.cc: New. - * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise. - -2004-08-27 Jason Merrill - - PR c++/13684 - * libsupc++/guard.cc (static_mutex): Internal class implementing a - recursive mutex which controls initialization of local statics. - (__gnu_cxx::recursive_init): New exception class. - (__cxa_guard_acquire): Deal with locking and recursion detection. - (acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise. - -2004-08-27 Matthias Klose - - * configure.host: For mips*-*-linux* update cpu_include_dir - after atomicity_dir is set. - -2004-08-27 Matthias Klose - - * config/abi/arm-linux-gnu/baseline_symbols.txt: New. - * config/abi/mips-linux-gnu/baseline_symbols.txt: Update to 3.4.0. - * configure.host: Set abi_baseline_pair for arm*-*-linux* and - mips*-*-linux*. - -2004-08-27 Paolo Carlini - - * testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: New. - * testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise. - * testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise. - * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise. - * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise. - - * testsuite/27_io/manipulators/adjustfield/char/1.cc: Minor - formatting fixes. - * testsuite/27_io/manipulators/adjustfield/char/2.cc: Likewise. - * testsuite/27_io/manipulators/basefield/char/1.cc: Likewise. - * testsuite/27_io/manipulators/standard/char/1.cc: Likewise. - * testsuite/27_io/manipulators/standard/char/2.cc: Likewise. - -2004-08-25 Paolo Carlini - - PR libstdc++/17038 (partial) - * include/bits/locale_facets.tcc (time_put<>::do_put): Increase - __maxlen to 128. - * include/bits/locale_facets.h (class __timepunct): Add FIXME - comment about _M_put. - * config/locale/generic/time_members.cc (_M_put): Always null - terminate __s. - * config/locale/gnu/time_members.cc (_M_put): Likewise. - * testsuite/22_locale/time_put/put/char/17038.cc: New. - * testsuite/22_locale/time_put/put/wchar_t/17038.cc: New. - -2004-08-24 Paolo Carlini - - * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: New. - * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise. - * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise. - * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise. - - * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Trim excess - newlines. - * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise. - -2004-08-22 Matthias Klose - - * config/abi/m68k-linux-gnu/baseline_symbols.txt: New. - * config/abi/sparc-linux-gnu/baseline_symbols.txt: Update to 3.4.0. - -2004-08-23 Paolo Carlini - - * configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE. - * aclocal.m4: Regenerate with automake-1.9.1. - * 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. - -2004-08-22 Paolo Carlini - - * include/bits/locale_facets.tcc (num_put<>::do_put(bool)): Cast - to a signed type, long according to the resolution of DR 359. - * testsuite/22_locale/num_put/put/char/9.cc: New. - * testsuite/22_locale/num_put/put/wchar_t/9.cc: New. - - * include/bits/locale_facets.tcc (num_put<>::do_put(const void*)): - Simplify a bit: no need to clear showpos. - -2004-08-21 Paolo Carlini - - * include/bits/char_traits.h (struct _Char_traits_match): Remove, - unused. - -2004-08-21 Paolo Carlini - - * testsuite/22_locale/money_put/put/wchar_t/1.cc: Use proper - wchar_t type for the fill argument; minor formatting tweaks. - * testsuite/22_locale/money_put/put/wchar_t/12971.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/4.cc: Likewise. - * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise. - * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise. - -2004-08-21 Paolo Carlini - - * include/bits/basic_ios.tcc (basic_ios<>::copyfmt): Don't deal - with _M_word != _M_local_word two times, redundantly. - -2004-08-20 Jason Merrill - - * include/Makefile.am (${host_builddir}/gthr.h): Don't add - _GLIBCXX_ to #pragma lines. - * include/Makefile.in: Update. - -2004-08-20 Paolo Carlini - - PR libstdc++/7219 (continued) - * include/bits/ios_base.h (class ios_base): Expose Annex D.6 - typedefs by default. - * testsuite/27_io/types/1.cc: Remove #if _GLIBCXX_DEPRECATED. - * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak dg-error - line number. - * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise. - -2004-08-20 John David Anglin - - * cpu/hppa/atomicity.h (__exchange_and_add, __atomic_add): Add memory - barrier to locking asm. - -2004-08-20 Paolo Carlini - - * include/c_std/cmath.tcc (__cmath_power): Revert previous commit: - actually the warning is a front-end bug (c++/17120). - -2004-08-20 Matthias Klose - - * config/abi/s390-linux-gnu/baseline_symbols.txt: New. - -2004-08-20 Paolo Carlini - - * include/c_std/cmath.tcc (__cmath_power): Suppress assignment - used as truth value warning. - -2004-08-20 Paolo Carlini - - * config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Add 32 bit - baseline. - -2004-08-20 Paolo Carlini - - * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Fix it. - -2004-08-19 Benjamin Kosnik - - * testsuite/22_locale/time_put/put/char/3.cc (test03): Don't check - timezone. - * testsuite/22_locale/time_put/put/wchar_t/3.cc (test03): Same. - -2004-08-19 Paolo Carlini - - * testsuite/performance/20_util/allocator/insert.cc: For std::map - instantiate the allocator for a correct pair type. - * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise. - * testsuite/performance/20_util/allocator/map_thread.cc: Likewise. - * testsuite/performance/20_util/allocator/producer_consumer.cc: - Likewise. - - * testsuite/performance/20_util/allocator/list_sort_search.cc: Very - minor formatting fixes. - * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. - -2004-08-19 Paolo Carlini - - * testsuite/22_locale/time_put/put/char/1.cc: Add VERIFY on the - results. - * 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/wchar_t/1.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. - -2004-08-19 Paolo Carlini - - * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update to 3.4.0. - -2004-08-18 Matthias Klose - - * config/abi/hppa-linux-gnu/baseline_symbols.txt: Update to 3.4.0. - * config/abi/i386-linux-gnu/baseline_symbols.txt: New. - * config/abi/powerpc-linux-gnu/baseline_symbols.txt: New. - -2004-08-17 Paolo Carlini - - * config/abi/alpha-linux-gnu/baseline_symbols.txt: Update to 3.4.0. - -2004-08-17 Paolo Carlini - - * config/abi/ia64-linux-gnu/baseline_symbols.txt: Update to 3.4.0. - -2004-08-17 Benjamin Kosnik - - * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.4.0. - -2004-08-16 Paolo Carlini - - * include/bits/indirect_array.h: Trivial formatting fixes. - * include/bits/valarray_after.h: Likewise. - * include/bits/valarray_array.h: Likewise. - * src/valarray-inst.cc: Likewise. - -2004-08-15 Paolo Carlini - - * testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Remove junk. - * testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise. - * testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise. - - * testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: New. - * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise. - * testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise. - * testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise. - -2004-08-15 Paolo Carlini - - * include/bits/deque.tcc: Trivial formatting fixes. - -2004-08-15 Paolo Carlini - - * include/bits/deque.tcc: Trivial formatting fixes. - - * include/bits/locale_facets.tcc (num_get<>::do_get(&bool)): - Remove unneded typedef. - - * include/bits/locale_facets.tcc: Very minor tweaks. - - * testsuite/22_locale/time_put/put/wchar_t/1.cc: Use proper - type for the fill argument. - * testsuite/22_locale/time_put/put/wchar_t/10.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/5.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. - -2004-08-13 Paolo Carlini - - * src/debug.cc (_Error_formatter::_M_print_string): Fix thinko, - memmove is not needed, memcpy suffices. - -2004-08-13 Paolo Carlini - - * include/std/std_fstream.h (class basic_ifstream, - class basic_ofstream, class basic_fstream): Add const overloads - of is_open, as per DR 365 [WP]. - * docs/html/ext/howto.html: Add an entry for DR 365. - -2004-08-12 Paolo Carlini - - * configure.ac: Specify version 1.8.5 in AM_INIT_AUTOMAKE. - -2004-08-12 Paolo Carlini - - PR libstdc++/16956 - * include/bits/sstream.tcc (basic_stringbuf<>::seekoff): Add __off - to the returned value, reorganize a bit. - * testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: New. - * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: New. - - * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Remove junk. - * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise. - -2004-08-12 Paul Brook - - * config/cpu/arm/cxxabi_tweaks.h: Define __cxa_vec_ctor_return and - _GLIBCXX_CXA_VEC_CTOR_RETURN. - * config/cpu/generic/cxxabi_tweaks.h: Ditto. - * libsupc++/cxxabi.h (__cxa_vec_ctor, __cxa_vec_cctor): Use - __cxa_vec_ctor_return. - * libsupc++/vec.cc (__cxa_vec_ctor, __cxa_vec_cctor): Ditto. - Use _GLIBCXX_CXA_VEC_CTOR_RETURN. - -2004-08-12 Kelley Cook - - * Makefile.in, aclocal.m4, configure, include/Makefile.in, - libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in, - src/Makefile.in, testsuite/Makefile.in: Regenerate - -2004-08-12 Jan Beulich - - * config/locale/generic/ctype_members.cc - (ctype::_M_convert_to_wmask): Default case must not use 0 as - initializer for return value, as that is invalid for enumerated types. - * config/locale/gnu/ctype_members.cc - (ctype::_M_convert_to_wmask): Likewise. - -2004-08-11 Paolo Carlini - - * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Fix typo. - -2004-08-11 Paolo Carlini - - * testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Declare test - variable. - * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Remove junk. - * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Ditto. - * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Ditto. - -2004-08-11 Paolo Carlini - Petur Runolfsson - - PR libstdc++/16959 - * src/ios_init.cc (ios_base::sync_with_stdio): Make sure the - standard streams are constructed. - * testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New. - -2004-08-09 Paolo Carlini - - * include/bits/stl_bvector.h: Trivial formatting fixes. - -2004-08-09 Paolo Carlini - - * src/ios.cc (ios_base::_M_grow_words): Uglify the names. - -2004-08-07 Jonathan Wakely - Paolo Carlini - - * src/debug.cc (_Error_formatter::_M_print_string): In order - to print individual words from __string, _M_format_word can't - be called since may be just sprintf, thus ignoring completely - __n: instead, use memmove and append '\0' by hand. - -2004-08-07 Paolo Carlini - - * config/locale/generic/c_locale.h (__convert_from_v): Don't - use a default for __prec, assume __prec >= 0 and simplify. - * config/locale/gnu/c_locale.h (__convert_from_v): Likewise. - * include/bits/locale_facets.tcc (money_put<>::do_put(long double)): - Pass format "%.*Lf" + precision == 0, equivalent to "%.0Lf". - -2004-08-04 Phil Edwards - - * docs/html/configopts.html: Emphasize that options change. - * docs/html/17_intro/configury.html: Update links. - -2004-08-03 Paolo Carlini - - * include/bits/list.tcc: Trivial formatting fixes. - -2004-08-03 Mark Mitchell - - * libsupc++/new_op.cc: Update comments. - * libsupc++/del_op.cc: Likewise. - -2004-08-02 Mark Mitchell - - * libsupc++/cxxabi.h: Make all declarations have default - visibility. - * libsupc++/exception: Likewise. - * libsupc++/new: Likewise. - * libsupc++/typeinfo: Likewise. - * libsupc++/unwind-cxx.h: Likewise. - * libsupc++/eh_alloc.cc (__cxa_allocate_exception): Put it into - the __cxxabiv1 namespace. - (__cxa_free_exception): Likewise. - * libsupc++/eh_aux_runtime.cc (__cxa_bad_cast): Likewise. - (__cxa_bad_typeid): Likewise. - * libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise. - (__cxa_end_catch): Likewise. - * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Likewise. - (__cxa_get_globals): Likewise. - * libsupc++/eh_throw.cc (__cxa_throw): Likewise. - (__cxa_rethrow): Likewise. - * libsupc++/pure.cc (__cxa_pure_virtual): Likewise. - * libsupc++/eh_type.cc: Include . - - * Makefile.am (hosted_source): Add libmath and testsuite. - (SUBDIRS): Remove them. - * acinclude.m4: (GLIBCXX_ENABLED_HOSTED): Default to freestanding - on arm*-*-symbianelf*. - * crossconfig.m4: Add arm*-*-symbianelf* support. - * include/c_std/std/std_cstdlib.h (stdlib.h): Do not include it - when freestanding. Do not bring names into std:: namespace with - "using" when freestanding. Declare required functions and macros - when freestanding. - * libsupc++/Makefile.am (c_sources): Do not include cp-demangle.c - when freestanding. - * libsupc++/del_op.cc: Declare "free" only when freestanding. - * libsupc++/eh_alloc.cc (cstring): Include it only when hosted. - (malloc): Declare when freestanding. - (free): Likewise. - (memset): Likewise. - (__cxa_allocate_exception): Call malloc, not std::malloc. Likewise - for memset. - (__cxa_free_exception): Likewise for free. - * libsupc++/new_op.cc: Declare "malloc" when freestanding. - * libsupc++/pure.cc (writestr): Define to nothing when - freestanding. - * libsupc++/vterminate.cc: Do not define anything when - freestanding. - * Makefile.in: Regenerated. - * aclocal.m4: Likewise. - * configure: 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. - -2004-08-01 Matt Austern - - PR libstdc++/16844 - * include/bits/stl_list.h (_M_create_node): Remove unused - zero-argument version. - * include/ext/slist (_M_create_node): Pass two arguments to - allocator's construct() member function. - * testsuite/23_containers/deque/explicit_instantiation.cc: New. - * testsuite/23_containers/list/explicit_instantiation.cc: New. - * testsuite/23_containers/vector/explicit_instantiation.cc: New. - * testsuite/23_containers/map/explicit_instantiation.cc: New. - * testsuite/23_containers/set/explicit_instantiation.cc: New. - * testsuite/23_containers/multimap/explicit_instantiation.cc: New. - * testsuite/23_containers/multiset/explicit_instantiation.cc: New. - * testsuite/ext/hash_set_explicit_instantiation.cc: New. - * testsuite/ext/slist_explicit_instantiation.cc: New. - -2004-07-30 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, - num_get<>::_M_extract_int): In the main parsing loop delay the - life of __q to the actual use point. - -2004-07-29 Paolo Carlini - - PR libstdc++/14220 - * include/bits/locale_facets.tcc (num_put<>::_M_insert_float): - Don't clip the precision passed down to __convert_from_v: - 22.2.2.2.2 nowhere says so. - * testsuite/22_locale/num_put/put/char/14220.cc: New. - * testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise. - -2004-07-29 Paolo Carlini - - * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 31. - -2004-07-29 Paolo Carlini - Petur Runolfsson - - PR libstdc++/12658 (continued) - * src/locale_init.cc (locale::locale, locale::global): Use - a single locale_mutex instead of two separate mutexes. - -2004-07-29 Paolo Carlini - - PR libstdc++/16813 - * include/debug/map.h (insert(_InputIterator, _InputIterator)): - Fix typo. - * testsuite/23_containers/map/insert/16813.cc: New. - -2004-07-29 Phil Edwards - - * docs/html/faq/index.html: Update version references. Make - clear that code from SGI has diverged greatly. Remove references - to library snapshots and what's-new sections. - * docs/html/faq/index.txt: Regenerate. - -2004-07-28 Matt Austern - - * include/bits/stl_construct.h (_Destroy): New three-argument - overload that takes an allocator argument. Another inline - three-argument overload that takes std::allocator and dispatches - to the two-argument version. - * include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux): - Change return type to void to match uninitialized_fill_n. - (__uninitialized_copy_a_): New function. Like uninitialized_copy - except that it takes an allocator and uses it for construct and - destroy. If the allocator is std::allocator, dispatches to - uninitialized_copy. - (__uninitialized_fill_a): Likewise. - (__uninitialized_fill_n_a): Likewise. - (__uninitialized_copy_copy): Give it an allocator argument. - (__uninitialized_fill_copy): Likewise. - (__uninitialized_copy_fill): Likewise. - * include/bits/deque.tcc: Use new forms defined in stl_construct.h - and stl_uninitialized.h. Replace use of single-argument _Construct - and _Destroy with use of allocator's construct and destroy methods. - * include/bits/list.tcc: Likewise. - * include/bits/stl_deque.h: Likewise. - * include/bits/stl_list.h: Likewise. - * include/bits/stl_tree.h: Likewise. - * include/bits/stl_vector.h: Likewise. - * include/bits/vector.tcc: Likewise. - * include/ext/hashtable.h: Use rebind so that allocator_type - has correct type for a container's allocator. Replace use of - single-argument _Construct and _Destroy with use of allocator's - construct and destroy methods. - * include/ext/memory (__uninitialized_copy_n_a): New function. - Like uninitialized_copy_n except that it takes an extra parameter, - an allocator, and uses it for construct and destroy operations. - * include/ext/rope: Use new forms defined in stl_construct.h, - stl_uninitialized.h, and ext/memory. Replace use of single-argument - _Construct and _Destroy with allocator construct and destroy methods. - * include/ext/ropeimpl.h: Likewise. - * include/ext/slist.h: Likewise. - * testsuite/testsuite_allocator.h (check_construct_destroy): New. - * testsuite/testsuite_allocator.cc (check_construct_destroy): New. - * testsuite/23_containers/deque/check_construct_destroy.cc: New. - * testsuite/23_containers/list/check_construct_destroy.cc: New. - * testsuite/23_containers/set/check_construct_destroy.cc: New. - * testsuite/23_containers/vector/check_construct_destroy.cc: New. - * testsuite/ext/hash_check_construct_destroy.cc: New. - * testsuite/ext/slist_check_construct_destroy.cc: New. - -2004-07-28 Alexandre Oliva - - 2003-10-01 Eric Christopher - * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm' - constraint. - 2003-07-09 Alexandre Oliva - * config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a. - -2004-07-23 Benjamin Kosnik - - PR libstdc++/16678 - * include/bits/locale_facets.tcc: Fix for -Werror. - -2004-07-23 Jonathan Wakely - - * docs/html/debug.html: Say debug mode only available since 3.4.0. - -2004-07-21 Benjamin Kosnik - - * docs/doxygen/mainpage.html: Clarify links. - * docs/doxygen/stdheader.cc: Add files. - * docs/doxygen/style.css: Remove bolds, add h2, h3 styles. - * docs/doxygen/user.cfg.in: New options, wrap. - -2004-07-20 Danny Smith - - * include/c_std/std_cwchar.h (wcsstr): Correct signature. - -2004-07-19 Benjamin Kosnik - - PR libstdc++/15488 - * testsuite/lib/libstdc++.exp (v3-copy-files): Revert. - -2004-07-17 Richard Sandiford - - PR bootstrap/16469 - * scripts/create_testsuite_files: Pass -print to find. - -2004-07-15 Paolo Carlini - - * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30. - * docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402. - -2004-07-15 Jakub Jelinek - - PR libstdc++/14697 - * acinclude.m4 (glibcxx_shared_libgcc): Correct - glibcxx_shared_libgcc test for multilibs. - * configure: Rebuilt. - -2004-07-14 Paolo Carlini - - PR libstdc++/16505 - * include/bits/stl_uninitialized.h (uninitialized_fill_n): Fix - the signature to return void, as per 20.4.4.3. - * include/bits/stl_vector.h (vector::vector(size_type, - const value_type&, const allocator_type&), vector::vector(size_type), - vector::_M_initialize_dispatch): Adjust callers. - * include/bits/vector.tcc (vector<>::_M_fill_assign, - vector<>::_M_fill_insert): Likewise. - * testsuite/20_util/memory/16505.cc: New. - -2004-07-14 Paolo Carlini - - * testsuite/22_locale/locale/cons/12658_thread-1.cc, - 12658_thread-2.cc: Use __gnu_test::try_named_locale. - -2004-07-13 Benjamin Kosnik - - * docs/html/ext/mt_allocator.html: Add docs for _Tune. - * include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public. - (__mt_alloc::_S_set_options): Same. - Add to comments. - -2004-07-13 Benjamin Kosnik - - * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults - for linux. - * configure: Regenerated. - -2004-07-13 Paolo Carlini - - * testsuite/22_locale/locale/cons/12658_thread.cc: Move/rename - to 12658_thread-1.cc and xfail. - * testsuite/22_locale/locale/cons/12658_thread-2.c: New, much - simpler version of 12658_thread-1.cc, still failing on 3_3 and - not failing on 3_4/mainline - both on single processor and - multiprocessor machines. - -2004-07-12 Benjamin Kosnik - - * docs/html/abi.html: Remove non-public qualification. - - * include/bits/concurrence.h: Tweak comments. - -2004-07-11 Paolo Carlini - - Add wchar_t counterparts of the basic_streambbuf tests. - * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: New. - * testsuite/27_io/basic_streambuf/imbue/wchar_t/1.cc, 9322.cc: - Likewise. - * testsuite/27_io/basic_streambuf/in_avail/wchar_t/9701-3.cc: Likewise. - * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc, 2.cc, - 3599.cc: Likewise. - * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise. - * testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise. - * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc, 1057.cc: - Likewise. - * testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise. - - * testsuite/27_io/basic_streambuf/imbue/char/1.cc, 9322.cc: Minor - tweaks. - * testsuite/27_io/basic_streambuf/overflow/char/2.cc, 3599.cc: - Likewise. - * testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise. - * testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise. - -2004-07-11 Phil Edwards - - * acinclude.m4: Cosmetic shell syntax fixes. - * configure.ac: Bring comment inline with reality. - * configure.host: Both of the above. Move 'arm' case to right - place in host_cpu switch. - * aclocal.m4, configure: Regenerate. - -2004-07-09 Paolo Carlini - - Add wchar_t counterparts of the basic_stringbuf tests. - * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc, 9322.cc: New. - * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc, 2.cc, - 3599.cc, 9988.cc: Likewise. - * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc, 9825.cc: - Likewise. - * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc: - Likewise. - * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc, 3.cc: - Likewise. - * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc, 2.cc, 3.cc: - Likewise. - * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc, 9425.cc: - Likewise. - * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc, 1057.cc, - 9404-1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc, 1057.cc, - 9404-2.cc: Likewise. - * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc, 2.cc, 3.cc, - 3955.cc: Likewise. - * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise. - * testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise. - -2004-07-08 Paolo Carlini - - * include/bits/gslice.h: Trivial formatting fixes. - * include/bits/gslice_array.h: Likewise. - * include/bits/indirect_array.h: Likewise. - * include/bits/mask_array.h: Likewise. - * include/bits/slice_array.h: Likewise. - * include/bits/valarray_after.h: Likewise. - * include/bits/valarray_array.h: Likewise. - * include/bits/valarray_before.h: Likewise. - * include/std/std_valarray.h: Likewise. - -2004-07-08 Benjamin Kosnik - - PR c++/16169 - * include/bits/basic_string.h (basic_string::operator=): Revert. - -2004-07-07 Benjamin Kosnik - - * configure.ac (libtool_VERSION): To 6:2:0. - * configure: Regenerated. - - * testsuite/testsuite_abi.cc (check_version): Add 3.4.2. - -2004-07-07 Aaron W. LaFramboise - - PR libstdc++/16411 - * config/linker-map.gnu: Add stdio_sync_filebuf::file exports. - -2004-07-07 Benjamin Kosnik - - * docs/html/abi.html: Updates for 3.4.1 release. Add summary of - -Weffc++ issues. - -2004-07-07 Paolo Carlini - - PR libstdc++/16401 - * include/bits/sstream.tcc (overflow): When reallocating _M_string - use an exponential grow policy. - * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New. - * testsuite/performance/27_io/stringbuf_overflow.cc: New. - -2004-07-06 Anssi Hannula - - PR libstdc++/15928 - * crossconfig.m4: Add in bits for djgpp. - * configure: Regenerate. - -2004-07-05 Jonathan Wakely - - * testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in - instantiation of set and multiset (functor param given as int). - -2004-07-04 Paolo Carlini - - * include/bits/basic_string.h: Trivial formatting fixes and/or - const-ification of some variables. - * include/bits/deque.tcc: Likewise. - * include/bits/stl_algobase.h: Likewise. - * include/bits/stl_bvector.h: Likewise. - * include/bits/stl_construct.h: Likewise. - * include/bits/stl_deque.h: Likewise. - * include/bits/stl_pair.h: Likewise. - * include/bits/stl_vector.h: Likewise. - * include/bits/vector.tcc: Likewise. - -2004-07-04 Paolo Carlini - - * testsuite/25_algorithms/copy/1.cc: Add instantiations for - systems with no COMDAT or weak support. - * testsuite/25_algorithms/copy/2.cc: Likewise. - * testsuite/25_algorithms/copy/3.cc: Likewise. - * testsuite/25_algorithms/copy/4.cc: Likewise. - -2004-07-03 Paul Brook - - * configure.ac: Set ABI_TWEAKS_SRCDIR. - * configure.host: Set abi_tweaks_dir. Check for atomicity.h when - setting atomicity_dir. Override type_cpu for arm based targets. - * include/Makefile.am (host_headers): Add cxxabi_tweaks.h. - * libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard. - * libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h. - * libsupc++/vec.cc: Ditto. - * config/cpu/arm/cxxabi_tweaks.h: New file. - * config/cpu/generic/cxxabi_tweaks.h: New file. - * */Makefile.in: Regenerate. - * configure: Regenerate. - -2004-07-02 Paolo Carlini - - * include/bits/type_traits.h (_Is_normal_iterator): Move... - * include/bits/cpp_type_traits.h: ... here, renamed to - __is_normal_iterator and consistent with the other traits. - * include/bits/stl_algobase.h (__copy_ni1, __copy_ni2): Convert - to the struct __copy_normal and three specializations. - (__copy_backward_output_normal_iterator, - __copy_backward_input_normal_iterator): Likewise, convert to - the struct __copy_backward_normal and three specializations. - (copy, copy_backward): Use the latter. - (__copy_aux, __copy_backward_aux): Very minor tweaks. - -2004-07-01 Paolo Carlini - - * include/bits/stl_algobase.h (__copy_trivial): Remove. - (__copy_aux2): Rewrite as __copy_aux to use __is_pointer, - __is_trivially_copyable, __are_same and __copy::copy. - (__copy): Rewrite as a class template and two specializations. - (__copy_ni2): Simplify, just call __copy_aux. - - * include/bits/stl_algobase.h (__copy_backward_aux): Add __are_same - check. - * testsuite/25_algorithms/copy/1.cc, 2.cc, 3.cc, 4.cc: Test also - for destination value type != source value type. - -2004-07-01 Benjamin Kosnik - Per Bothner - Mohan Embar - - PR libstdc++/16248 - * include/bits/concurrence.h (__glibcxx_mutex_type): New. - (__glibcxx_mutex): Encapsulate mutex init function into type for - threaded configurations without __GTHREAD_MUTEX_INIT. - (lock::lock): Make device member a reference. - (lock::~lock): Same. - * include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change - to mutex_type. - * src/allocator.cc: Same. - -2004-06-30 Brad Spencer - - * include/ext/mt_allocator.h: Handle allocations at static - initialization that happen before _S_options is (automatically) - constructed; set _S_init even if _M_force_new is true. - -2004-06-30 Benjamin Kosnik - - * config/linker-map.gnu: Revert new exports. - -2004-06-30 Benjamin Kosnik - Stuart Anderson - - * config/linker-map.gnu: Add destructor exports for abstract base - classes to conform to LSB. - -2004-06-30 Gabriel Dos Reis - Paolo Carlini - - * include/bits/cpp_type_traits.h: Add __is_pointer and - __is_trivially_copyable. - * include/bits/stl_algobase.h (fill, fill_n): Slightly - tweak to use the latter. - (__copy_backward_dispatch): Remove. - (__copy_backward_aux): Rewrite to use __is_pointer and - __is_trivially_copyable and __copy_backward::copy_b. - (__copy_backward): Rewrite as a class template and two - specializations. - -2004-06-30 Paolo Carlini - - * testsuite/25_algorithms/copy.cc: Move to... - * testsuite/25_algorithms/copy/1.cc: ... here, extend. - * testsuite/25_algorithms/copy/2.cc: New. - * testsuite/25_algorithms/copy/3.cc: New. - * testsuite/25_algorithms/copy/4.cc: New. - -2004-06-29 Paul Brook - - * libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the - element size in the cookie. - -2004-06-28 Paolo Carlini - - * include/bits/cpp_type_traits.h: Move the additions to - namespace __gnu_internal outside of namespace std; trivial - formatting fixes. - -2004-06-28 Benjamin Kosnik - - * include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base): - Revert -Weffc++ changes that defined copy ctory and or assignment - operator. - * libsupc++/tinfo.cc (__upcast_result): Same. - -2004-06-28 Paolo Carlini - - * src/localename.cc (locale::_Impl::_Impl): Slightly improve - the algorithm used to name the categories. - -2004-06-28 Paolo Bonzini - - * include/Makefile.am: Give a .gch extension to - the PCH files, not only to the directory. - * include/Makefile.in: Regenerate. - -2004-06-28 Paolo Carlini - - * config/locale/gnu/monetary_members.cc - (moneypunct::_M_initialize_moneypunct): Clean up - assignments of _M_decimal_point and _M_thousands_sep. - -2004-06-27 Paolo Carlini - - * docs/html/17_intro/contribute.html: Update some links. - * docs/html/17_intro/porting-howto.html: Likewise. - * docs/html/17_intro/porting-howto.xml: Likewise. - * docs/html/18_support/howto.html: Likewise. - * docs/html/21_strings/howto.html: Likewise. - * docs/html/27_io/howto.html: Likewise. - * docs/html/configopts.html: Likewise. - * docs/html/ext/howto.html: Likewise. - * docs/html/faq/index.html: Likewise. - * docs/html/install.html: Don't mention 2.x compilers. - -2004-06-27 Paolo Carlini - - * include/ext/rope: Trivial formatting fixes. - * include/ext/ropeimpl.h: Likewise. - -2004-06-26 Paolo Carlini - - PR libstdc++/16210 - * acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the - availability of strto(u)ll, not used anymore in the iostreams. - * configure: Regenerate. - -2004-06-25 Benjamin Kosnik - - PR libstdc++/16182 - * linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to - AC_DEFINE_UNQUOTED. - * configure: Regenerate. - -2004-06-25 Paul Brook - - * libsupc++/cxxabi.h: Define __ARM_EABI__ - (__guard): Use it. - * libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto. - -2004-06-25 Paul Brook - - * include/bits/concurrence.h: Still create mutex object when - single-threaded. - -2004-06-25 Paolo Carlini - - * include/bits/stl_algobase.h (fill, fill_n): Revert last - change: actually we need to copy construct an object of type - _Tp, not of type iterator_traits<>::value_type, therefore the - code is ok. - -2004-06-25 Paolo Carlini - - * include/bits/stl_algobase.h (fill, fill_n): Tighten the - dispatch: use iterator_traits<>::value_type, not _Tp. - -2004-06-25 Paolo Carlini - - * testsuite/25_algorithms/fill/1.cc: Tweak instantiations. - * testsuite/25_algorithms/fill/2.cc: Likewise. - -2004-06-25 Dan Nicolaescu - Paolo Carlini - - * include/bits/stl_algobase.h (__fill, __fill_n): New helpers - for fill and fill_n, respectively: when copying is cheap, use a - temporary to avoid a memory read in each iteration. - -2004-06-25 Paolo Carlini - - * testsuite/25_algorithms/fill/1.cc: New. - * testsuite/25_algorithms/fill/2.cc: Likewise. - -2004-06-25 Benjamin Kosnik - - * include/debug/formatter.h (__gnu_debug::_Error_formatter): - Remove copy constructor and assignment operator. - -2004-06-24 Benjamin Kosnik - - * include/bits/concurrence.h (__gnu_cxx::lock): New. - * include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove. - (__pool_base::_M_get_mutex): New. - * include/bits/allocator.h: Tweak. - * src/allocator.cc (__pool_base::_M_get_free_list): Correct offset. - * config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock. - * include/bits/stl_threads.h: Remove. - * include/Makefile.am: Also here. - * include/Makefile.in: Regenerate. - - * src/locale_init.cc: Use __gnu_cxx::lock. - - * src/allocator.cc: Move all instantiations... - * src/allocator-inst.cc: ...here. - -2004-06-23 Andrew Pinski - - * linkage.m4: Remove check for libmx. - * configure: Regenerate. - -2004-06-23 Paolo Carlini - - PR libstdc++/16154 - * include/bits/boost_concept_check.h (struct _TrivialIteratorConcept): - Don't require the _DefaultConstructibleConcept. - (struct _ForwardIteratorConcept): Require it here. - -2004-06-22 Alexandre Oliva - - * include/bits/istream.tcc (getline): Make sure arguments passed - to min/max have the same type. - * include/bits/locale_facets.tcc (__verify_grouping): Likewise. - * include/bits/stl_deque.h (_Deque_base::_Deque_base): Likewise. - -2004-06-22 Benjamin Kosnik - - * docs/html/abi.html: Update links. - -2004-06-22 Paolo Carlini - - * testsuite/26_numerics/complex_inserters_extractors.cc, - complex_value.cc, buggy_complex.cc: Move to... - * testsuite/26_numerics/complex/: ... here. - * testsuite/26_numerics/c99_classification_macros_c++.cc, - c99_classification_macros_c.cc, c_math.cc, c_math_dynamic.cc, - fabs_inline.cc: Move to... - * testsuite/26_numerics/cmath/: ... here. - * testsuite/26_numerics/binary_closure.cc, slice.cc, - slice_array_assignment.cc, valarray.cc, valarray_const_bracket.cc, - valarray_name_lookup.cc, valarray_operators.cc, - valarray_subset_assignment.cc: Move to... - * testsuite/26_numerics/valarray/: ... here (new dir). - * testsuite/26_numerics/sum_diff.cc: Move to... - * testsuite/26_numerics/numeric/: ... here (new dir). - -2004-06-22 Paolo Carlini - - * include/std/std_istream.h (ignore(streamsize __n = 1, - int_type __delim = traits_type::eof())): Split into... - (ignore(), ignore(streamsize __n), ignore(streamsize __n, - int_type __delim)): The first two can be much more simpler - and efficient than the fully general case; also, the last - two can take advantage of the same mechanism already used - for getline. - * include/bits/istream.tcc (ignore(streamsize __n = 1, - int_type __delim = traits_type::eof()): Remove. - (ignore(), ignore(streamsize __n), ignore(streamsize __n, - int_type __delim)): New. - -2004-06-21 Loren J. Rittle - - * config/linker-map.gnu: Use wildcards for - __basic_file::sys_open(FILE*, _Ios_Openmode). - -2004-06-20 Paolo Carlini - - * testsuite/27_io/basic_istream/ignore/char/3.cc: New. - -2004-06-18 Paolo Carlini - - * include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align, - the alignment requested. - (__mt_alloc<>::_Tune::_Tune): Tweak consistently. - (__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record). - (__mt_alloc<>::deallocate): Likewise. - -2004-06-18 Paolo Carlini - - PR libstdc++/16020 - * include/debug/safe_base.h - (_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&), - _Safe_sequence_base::operator=): Provide definitions. - * testsuite/23_containers/bitset/cons/16020.cc: New. - -2004-06-18 Benjamin Kosnik - - * include/ext/pool_allocator.h: Qualify __throw_bad_alloc. - (__pool_base): Remove unused template parameter. Add - protected. Move lock data into __pool_base::_Lock. Remove static - on member functions. - (__pool_base::_M_get_free_list): New. - (__pool_alloc): Move _S_force new here. - * src/allocator.cc: Move out of line __pool_base definitions here. - * config/linker-map.gnu: Export bits from __pool_base. - -2004-06-18 Paolo Carlini - - * config/locale/gnu/numeric_members.cc - (numpunct::_M_initialize_numpunct): Clean up - assignments of _M_decimal_point and _M_thousands_sep. - * config/locale/gnu/time_members.cc - (__timepunct::_M_initialize_timepunct): Clean up - and reformat assignments of date and time fields. - -2004-06-16 Paolo Carlini - - * include/ext/rope (rope(_CharT, const allocator_type&)): Fix - to use _Data_allocate. - * include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise. - (rope<>::_S_substring): Likewise. - (rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise. - (rope<>::c_str()): Likewise. - (rope<>::replace_with_c_str()): Likewise. - - * include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf): - Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::, - not _RopeRep. - (_Rope_iterator_base<>::_S_setcache): Likewise. - (_Rope_iterator_base<>::_S_setcache_for_incr): Likewise. - (rope<>::_S_substring): Likewise. - (rope<>::_S_dump): Likewise. - (rope<>::_S_fetch_ptr): Likewise. - (rope<>::_S_compare): Likewise. - (rope<>::replace_with_c_str()): Likewise. - - * testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc. - * testsuite/ext/rope/2.cc: New. - -2004-06-16 Paolo Carlini - Matt Austern - - * testsuite/ext/rope/3.cc: New. - -2004-06-15 Paolo Bonzini - - * acinclude.m4: Remove useless multilib configury. - * Makefile.am: Remove useless multilib rules. - * aclocal.m4: Regenerate. - * Makefile.in: Regenerate. - * configure: Regenerate. - -2004-06-15 Paolo Carlini - - * include/ext/hashtable.h: Trivial formatting fixes. - * include/ext/rb_tree: Likewise. - -2004-06-14 Paolo Carlini - - * include/ext/hash_map: Trivial formatting fixes. - * include/ext/hash_set: Likewise. - * include/ext/memory: Likewise. - * include/ext/numeric: Likewise. - -2004-06-14 Benjamin Kosnik - - * Makefile.in: Regenerate with automake 1.8.5. - * aclocal.m4: Same. - * include/Makefile.in: Same. - * libmath/Makefile.in: Same. - * libsupc++/Makefile.in: Same. - * po/Makefile.in: Same. - * src/Makefile.in: Same. - * testsuite/Makefile.in: Same. - -2004-06-14 Paolo Carlini - - * include/ext/slist: Trivial formatting fixes. - -2004-06-14 Paolo Carlini - - * include/bits/locale_facets.tcc (time_get<>::_M_extract_name): - Don't use the 'magic number' 10 in the computation of __minlen; - never access __name past __minlen; in the loop over __i3, don't - decrease __nmatches and increase __i3 at once, only either of - the two; tidy. - -2004-06-13 Paolo Carlini - - * include/bits/locale_facets.tcc (time_get<>::do_get_time, - time_get<>::do_get_date): Use only once _M_extract_via_format, - instead of going through "%X"/"%x" and calling it two times - (+ using widen). - -2004-06-12 Paolo Carlini - - * include/ext/algorithm: Trivial formatting fixes. - * include/ext/functional: Likewise. - * include/ext/hash_fun.h: Likewise. - * include/ext/iterator: Likewise. - -2004-06-12 Paolo Carlini - - * include/bits/basic_string.tcc (find(const _CharT*, size_type, - size_type)): Reimplement using std::search. - * src/string-inst.cc: Instantiate std::search for char/wchar_t. - -2004-06-12 Dhruv Matani - - * testsuite/performance/21_strings/string_find.cc: New. - -2004-06-10 Aaron W. LaFramboise - - * include/bits/istream.tcc (istream::ignore): Fix for -Wuninitialized. - -2004-06-10 Jan van Dijk - - * include/std/std_complex.h (sin(const complex<_Tp>& __z)): Make - this function return a value. - -2004-06-09 Paolo Carlini - - PR libstdc++/15775 - * include/bits/stl_deque.h: Consistently with stl_set.h, define - pointer as allocator's pointer, likewise for reference, - const_pointer, and const_reference. - * include/bits/stl_list.h: Likewise. - * include/bits/stl_map.h: Likewise. - * include/bits/stl_multimap.h: Likewise. - * include/bits/stl_vector.h: Likewise. - -2004-06-09 Benjamin Kosnik - - * crossconfig.m4: Remove signbit, signbitf, signbitl. - * linkage.m4: Comment LIBMATHOBJS, tweak others. AC_DEFINES for - builtin math functions instead of AC_DEFINE_UNQUOTED. - * configure: Regenerate. - -2004-06-08 Benjamin Kosnik - - * docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std. - * docs/doxygen/mainpage.html: Remove links. - -2004-06-08 Jason Merrill - - * config/linker-map.gnu: Use wildcards for - __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}. - -2004-06-08 Paolo Carlini - - * include/ext/pool_allocator.h: Convert to a global free-list, - as per the original SGI/HP design: move the implementation - details to struct __pool_base, from which __pool_alloc derives. - * src/allocator.cc: Instantiate __pool_base. - -2004-06-07 Dhruv Matani - Paolo Carlini - - * testsuite/testsuite_performance.h - (resource_counter::allocated_memory): Make it return the right - number of bytes requested by the allocators/application. This is - the sbrk+mmaped memory. - -2004-06-02 Gabriel Dos Reis - - * include/std/std_complex.h (log): Tidy. - -2004-05-31 Benjamin Kosnik - - * config/linker-map.gnu (GLIBCXX_3.4.1): Add. - * testsuite/testsuite_abi.cc: Same. - * configure.ac (libtool_VERSION): Bump to 6:1:0. - * configure: Regenerate. - * aclocal.m4: Regenerate. - -2004-05-30 Gabriel Dos Reis - - * include/std/std_complex.h (complex<_Tp>): Properly indent - to follow C++STYLE. - (complex<>::__rep): New. - (__complex_abs): New. Dispatch to built-ins. - (abs): Use them. - (__complex_arg): New. Dispatch to built-ins. - (arg): Use it. - (__complex_cos): New. Dispatch to built-ins. - (cos): Use it. - (__complex_cosh): New. Dispatch to built-ins. - (cosh): Use it. - (__complex_exp): New. Dispatch to built-ins. - (exp): Use it. - (__complex_log): New. Dispatch to built-ins. - (log): Use it. - (__complex_sin): New. Dispatch to built-ins. - (sin): Use it. - (__complex_sinh): New. Dispatch to built-ins. - (sinh): Use it. - (__complex_sqrt): New. Dispatch to built-ins. - (sqrt): Use it. - (__complex_tan): New. Dispatch to built-ins. - (tan): Use it. - (__complex_tanh): New. Dispatch to built-ins. - (tanh): Use it. - (__complex_pow): New. Dispatch to built-ins. - (pow): Use it. - -2004-05-29 Richard B. Kreckel - Benjamin Kosnik - - PR libstdc++/14600 - * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New. - * include/ext/stdio_filebuf.h (stdio_filebuf::file): New. - * config/io/basic_file_stdio.cc (__basic_file::file): New. - * config/io/basic_file_stdio.h: Define. - -2004-05-27 Benjamin Kosnik - - PR libstdc++/15675 - * docs/html/documentation.html: Update doxygen links for 3.4.0. - -2004-05-27 Jan Beulich - - * scripts/create_testsuite_files: Tweak. - -2004-05-25 Benjamin Kosnik - - PR libstdc++/15489 - * scripts/create_testsuite_files: Revert xtype change, add non-GNU - bits to do the same thing. - -2004-05-24 Paolo Carlini - - * include/bits/istream.tcc (ignore): Correctly deal with - n == numeric_limits::max(). - * testsuite/27_io/basic_istream/ignore/char/2.cc: New. - - * include/bits/istream.tcc (basic_istream<>::getline): Prefer - '_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case - __n == numeric_limits<>::min(). - - * include/bits/istream.tcc: Minor tweaks. - - * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc: - Tighten. - * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc: - Likewise. - * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc: - Likewise. - * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc: - Likewise. - * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise. - -2004-05-22 Benjamin Kosnik - - PR libstdc++/12854 - Fixups for -Weffc++. - * include/bits/basic_string.h (basic_string::operator=): Return - pointer to this instead of result of assign. Although redundant, - this doesn't impact resultant codegen. - - * include/bits/locale_facets.h (__numpunct_cache): Declare - assignment opxserator and copy constructor private. - (__timepunct_cache): Same. - (__moneypunct_cache): Same. - (collate): Use member initialization list for _M_c_locale_collate. - * config/locale/gnu/messages_members.h: Same. - * config/locale/gnu/time_members.h (__timepunct): Same. - * src/codecvt.cc: Use member initialization list to initialize - _M_c_locale_codecvt. - * src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok. - * config/os/gnu-linux/ctype_noninline.h: Same. - * src/locale.cc (_Impl): Same. - * src/locale_init.cc: Same. - * src/localename.cc: Same. - - * include/bits/basic_ios.h (basic_ios): Complete member - initialization list. - * include/bits/istream.tcc (basic_istream::sentry): Same. - * include/bits/ostream.tcc (basic_ostream::sentry): Same. - * include/bits/fstream.tcc (basic_filebuf): Add _M_lock and - _M_pback to member initialization list. - * include/std/std_streambuf.h: Same. - * include/std/std_sstream.h: Same, for _M_mode. - * src/ios.cc (ios_base): Same. - - * include/ext/rope: Make derived classes match exception - - specifications. Add copy constructors and assignment operators. - - * include/debug/safe_base.h (_Safe_sequence_base): Declare copy - constructor and assignment operator protected. - (_Safe_iterator_base): Same. - * include/debug/formatter.h (_Error_formatter): Define copy - constructor and assignment operator. - - * include/backward/strstream: Declare assignment operator and copy - constructor private. - -2004-05-22 Benjamin Kosnik - - * testsuite/testsuite_hooks.h (func_callback): Declare copy - constructor and assignment operator private. - * testsuite/23_containers/deque/cons/clear_allocator.cc: Match - exception specifications of base class. - * testsuite/23_containers/list/cons/clear_allocator.cc: Same. - * testsuite/23_containers/vector/cons/clear_allocator.cc: Same. - * testsuite/23_containers/vector/bool/clear_allocator.cc: New. - -2004-05-22 Benjamin Kosnik - - * libsupc++/cxxabi.h: Remove duplicated and useless public and - private keywords in class declarations. Format. Use - stddef.h. Expose declarations to "C" compilation. - * libsupc++/tinfo.cc (__upcast_result): Add copy constructor and - assignment operator. - (__dyncast_result): Same. - * libsupc++/vec.cc (uncatch_exception): Same, use member - initialization list. - -2004-05-22 Benjamin Kosnik - - * testsuite/abi_check.cc: Add unistd.h. - -2004-05-22 Paolo Carlini - - PR libstdc++/15565 - * include/bits/locale_facets.tcc (__int_to_char(unsigned long), - __int_to_char(unsigned long long)): Showpos is not relevant - for unsigned types. - * testsuite/22_locale/num_put/put/char/15565.cc: New. - * testsuite/22_locale/num_put/put/wchar_t/15565.cc: New. - - * testsuite/22_locale/num_put/put/wchar_t/1.cc: Use L for the fill - char. - * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise. - * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise. - * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise. - * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise. - * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise. - * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise. - -2004-05-21 Matthias Klose - - * docs/doxygen/run_doxygen: Bump required version. - -2004-05-21 Benjamin Kosnik - - * docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose. - * docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards. - -2004-05-21 Paolo Carlini - - * include/bits/istream.tcc (ignore): Remove redundant line. - (readsome): Tidy, closely following 27.6.1.3, p30. - -2004-05-20 Paolo Carlini - - * include/bits/istream.tcc (operator>>(basic_istream<>&, - basic_string<>&)): Use a temporary buffer, thus avoiding - reallocation for common case. - * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc: - New. - * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc: - Likewise. - - * include/bits/istream.tcc: Const-ification of a few variables. - - * include/bits/ostream.tcc: Trivial formatting fixes and - const-ification of some variables. - -2004-05-20 Benjamin Kosnik - - PR libstdc++/15123 - PR libstdc++/13928 - * docs/doxygen/Intro.3: Remove Allocators.3. - Add new extension headers, extension namespace list. - * docs/doxygen/run_doxygen (problematic): Remove Allocators.3 - Rename GLIBCXXSTD names to std::. Rename __gnu_debug to - __gnu_debug::. Remove __policy_ renames. - * docs/doxygen/guide.html: Add dot note. - * docs/doxygen/stdheader.cc: Edit, add files. - * docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7. - -2004-05-18 Jonathan Wakely - - * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691. - -2004-05-18 Jan Beulich - - PR libstdc++/15489 - * scripts/create_testsuite_files: Also find source files through - symbolic links. - -2004-05-18 Jan Beulich - - PR libstdc++/15488 - * testsuite/lib/libstdc++.exp: Make test files writable. - -2004-05-18 Paolo Carlini - - * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor - tweaks. - -2004-05-18 Dhruv Matani - - * include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write - allocation loop which removes blocks from the global free list - from O(N) to O(1) when the required blocks are <= the number - available. - -2004-05-18 Jonathan Wakely - - * include/ext/enc_filebuf.h: Move concept-check macro to class scope. - -2004-05-17 Benjamin Kosnik - - * testsuite/testsuite_hooks.h (__gnu_test::conversion): New class. - * testsuite/23_containers/deque/14340.cc: New. - * testsuite/23_containers/list/14340.cc: New. - * testsuite/23_containers/map/14340.cc: New. - * testsuite/23_containers/multimap/14340.cc: New. - * testsuite/23_containers/multiset/14340.cc: New. - * testsuite/23_containers/set/14340.cc: New. - * testsuite/23_containers/vector/14340.cc: New. - -2004-05-17 Douglas Gregor - - PR libstdc++/14340 - * include/debug/safe_iterator.h (_Safe_iterator converting - constructor): Only allow declaration to instantiate when the - incoming _Safe_iterator has exactly the right iterator type. - -2004-05-17 Jonathan Wakely - - * include/bits/boost_concept_check.h: Fix old attribute syntax. - * testsuite/23_containers/map/modifiers/swap.cc: Define operator< - to pass concept-checks. - * testsuite/23_containers/multimap/modifiers/swap.cc: Same. - * testsuite/23_containers/set/modifiers/swap.cc: Same. - * testsuite/23_containers/multiset/modifiers/swap.cc: Same. - -2004-05-16 Paolo Carlini - - * include/std/std_bitset.h: Minor formatting fixes. - -2004-05-16 Paolo Carlini - - * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): - Consistently update __bin._M_free[0]. - (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use - __bin._M_free[0] to simplify the while loop (i.e., the number - of iterations becomes known at the outset). - -2004-05-15 Paolo Carlini - - * include/std/std_bitset.h: Trivial formatting fixes. - -2004-05-14 Paolo Carlini - Ivan Godard - - PR libstdc++/15361 - * include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix. - * testsuite/23_containers/bitset/ext/15361.cc: New. - -2004-05-13 Benjamin Kosnik - - PR libstdc++/15046 - * crossconfig.m4: Add C99 math bits for linux crosses. - * configure: Regenerate. - -2004-05-13 Simon Marshall - Benjamin Kosnik - - PR libstdc++/15090 - * include/bits/locale_facets.h: Fix for -fno-for-scope. - * include/debug/safe_sequence.h: Same. - * include/debug/safe_iterator.tcc: Same. - * src/debug.cc: Same. - * src/locale.cc: Same. - * src/locale_init.cc: Same. - * src/localename.cc: Same. - * config/locale/gnu/ctype_members.cc: Same. - * config/locale/gnu/numeric_members.cc: Same. - * testsuite/testsuite_abi.cc: Same. - * testsuite/testsuite_hooks.cc: Same. - -2004-05-13 Jonathan Wakely - - * docs/html/abi.html: Document effect of -fabi-version on value - of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c. - Fix markup. - -2004-05-13 Benjamin Kosnik - - PR libstdc++/15074 - * docs/html/faq/index.html: Update docs for libsupc++ usage. - -2004-05-13 Benjamin Kosnik - - PR libstdc++/15412 - * include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace - __gnu_internal. - (_GLIBCXX_mutex_address): Same. - (_GLIBCXX_once): Same. - (_GLIBCXX_mutex_init): Same. - (_GLIBCXX_mutex_address_init): Same. - -2004-05-13 Benjamin Kosnik - - * docs/html/abi.html: New. - * docs/html/abi.txt: Remove. - * docs/html/documentation.html: Add link. - * testsuite/Makefile.am: Add files. - * testsuite/Makefile.in: Regenerated. - * testsuite/abi_check.cc: Move and modify code into... - * testsuite/testsuite_abi.cc: Add. - * testsuite/testsuite_abi.h: Add. - - * docs/html/17_intro/TODO: Update. - * include/bits/stl_pair.h: Format. - -2004-05-06 Matthias Klose - - * include/backward/iterator.h: Add GPL copyright info, - with exception clause. - * include/bits/boost_concept_check.h: Likewise. - * include - * libsupc++/tinfo.h: Likewise. - * po/string_literals.cc: Likewise. - -2004-05-03 Andreas Tobler - - * acinclude.m4: Replace -W with more speaking -Wextra. - * configure: Rebuilt. - -2004-05-03 Paolo Carlini - - Optimize locale::_M_impl->_M_names for the most common cases: - !_M_names[0] means unnamed; !_M_names[1] means all the categories - the same name (_M_names[0] && _M_names[1] means that the full set - of _M_names must be processed, the general case). - * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name): - Tweak, saving work when !_M_names[1]. - (locale::locale(const locale&, _Facet*): Simplify: now just setting - _M_names[0] = 0 means unnamed. - * src/locale.cc (locale::operator==): Deal first with the common, - easy cases, otherwise fall back to locale::name(). - (locale::name()): Tweak, if !_M_names[0] just return "*". - (locale::_Impl::_Impl(const _Impl&, size_t): Tweak, early stop - copying __imp._M_names if !__imp._M_names[0] or !__imp._M_names[1]. - * src/locale_init.cc (locale::_Impl::_Impl(size_t)): Tweak. - * src/localename.cc (locale::_Impl::_Impl(const char*, size_t): - Simplify when !std::strchr, just updating _M_names[0]; clean up. - (locale::_Impl::_M_replace_categories): When !_M_names[1] prepare - for the general case (full set of names), then do the usual work; - clean up. - - * src/locale.cc (locale::name()): Reserve space in __ret. - * src/locale_init.cc (locale::global(const locale&)): Save - the name in a temporary. - * src/localename.cc (locale::locale(const char*)): Reserve space - in __str. - -2004-04-29 Paolo Carlini - - * src/locale.cc (locale::operator==): Always avoid constructing - locale::name(), directly compare pairs of _M_names. - -2004-04-26 Paolo Carlini - - * include/bits/istream.tcc: Fix comment. - -2004-04-26 Paolo Carlini - - * include/bits/stl_vector.h: Trivial formatting fixes. - * include/bits/vector.tcc: Likewise. - -2004-04-25 Paolo Carlini - - PR libstdc++/15002 (continued again) - * include/bits/istream.tcc (getline(basic_istream<>&, - basic_string<>&, _CharT)): Use a temporary buffer, thus - avoiding reallocation for common case. - - * include/bits/basic_string.tcc (_S_construct(_InIterator, - _InIterator, const _Alloc&, input_iterator_tag)): Tweak size - of temporary buffer to a power of two. - - * testsuite/27_io/basic_istream/getline/char/4.cc: Add comment. - -2004-04-25 Paolo Carlini - - * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc: - New. - * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc: - Likewise. - * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise. - -2004-04-24 Paolo Carlini - Petur Runolfsson - - PR libstdc++/15002 (continued) - * include/bits/istream.tcc (basic_istream<>::getline(char_type*, - streamsize, char_type)): Use traits::find/copy in a loop to speed - up greatly the function in the common case (I/O buffer size >> 1). - -2004-04-24 Paolo Carlini - - * testsuite/27_io/basic_istream/getline/char/4.cc: New. - - * include/bits/istream.tcc (getline(basic_istream<>&, - basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead - of sbumpc(), consistently with the other functions, thus also - dealing correctly with the case of exceeded string::max_size(). - -2004-04-24 Matthias Klose - - Jonathan Wakely - * docs/html/configopts.html: Fix reference to allocator config option. - -2004-04-23 Andrew Pinski - - * linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also. - * configure: Regenerate. - -2004-04-23 Daniel Jacobowitz - - PR libstdc++/15047, libstdc++/11610 - * testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download. - (libstdc++_init): Don't pass outdir to v3-copy-files. - -2004-04-21 Paolo Carlini - - * include/bits/deque.tcc: Trivial formatting fixes. - * include/bits/stl_deque.h: Likewise. - * include/bits/stl_list.h: Likewise. - * include/bits/stl_tree.h: Likewise. - -2004-04-21 Paolo Carlini - Andrew Pinski - - * include/bits/basic_string.tcc (_M_mutate): Don't compute - __src unnecessarily. - -2004-04-19 Benjamin Kosnik - - * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc: - Clarify assertion, set test variable to false before assert. - * testsuite/27_io/basic_istringstream/str/char/1.cc: Same. - * testsuite/27_io/basic_stringstream/str/char/1.cc: Same. - * testsuite/27_io/ios_base/storage/2.cc: Same. - - * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix - function returns. - * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same. - * testsuite/27_io/fpos/14320-3.cc: Same. - - * testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std. - * testsuite/27_io/fpos/1.cc: Same. - * testsuite/27_io/basic_stringstream/2.cc: Same. - * testsuite/27_io/basic_stringbuf/4.cc: Same. - * testsuite/27_io/basic_stringbuf/1.cc: Same. - * testsuite/27_io/basic_stringbuf/2.cc: Same. - * testsuite/27_io/basic_streambuf/2.cc: Same. - * testsuite/27_io/basic_ostringstream/2.cc: Same. - * testsuite/27_io/basic_ostream/2.cc: Same. - * testsuite/27_io/basic_ofstream/2.cc: Same. - * testsuite/27_io/basic_istringstream/2.cc: Same. - * testsuite/27_io/basic_istream/2.cc: Same. - * testsuite/27_io/basic_iostream/2.cc: Same. - * testsuite/27_io/basic_ios/2.cc: Same. - * testsuite/27_io/basic_ifstream/2.cc: Same. - * testsuite/27_io/basic_fstream/2.cc: Same. - * testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx. - - * testsuite/21_strings/basic_string/capacity/1.cc: Don't compare - unsigned against zero. - * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same. - * testsuite/21_strings/basic_string/capacity/char/1.cc: Same. - - * testsuite/18_support/new_delete_placement.cc: Initialize - variables before first use. - * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same. - * testsuite/21_strings/char_traits/requirements/char/1.cc: Same. - * testsuite/21_strings/char_traits/requirements/short/1.cc: Same. - * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc: - Same. - * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_badbit_throw.cc: Same. - * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc: - Same. - * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_failbit_throw.cc: Same. - * testsuite/27_io/types/2.cc: Same. - - * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary - file name. - * testsuite/27_io/fpos/14775.cc: Same. - -2004-04-19 Paolo Carlini - - PR libstdc++/15002 (partial) - * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe): - Special case __n2 == 1, not calling traits_type::assign/copy. - -2004-04-17 Benjamin Kosnik - - * include/bits/stl_bvector.h: Use _M_impl._M_start. - -2004-04-16 Benjamin Kosnik - - * include/bits/c++config (_GLIBCXX_STD): New. - * src/list.cc: Use it. - * include/std/std_bitset.h: Same. - * include/bits/vector.tcc: Same. - * include/bits/stl_set.h: Same. - * include/bits/stl_multiset.h: Same. - * include/bits/stl_multimap.h: Same. - * include/bits/stl_map.h: Same. - * include/bits/stl_list.h: Same. - * include/bits/stl_vector.h: Same. - * include/bits/stl_bvector.h: Same. - * include/bits/stl_deque.h: Same. - * include/bits/deque.tcc: Same. - * include/bits/list.tcc: Same. - * include/debug/vector: Same. - * include/debug/set.h: Same. - * include/debug/multiset.h: Same. - * include/debug/multimap.h: Same. - * include/debug/map.h: Same. - * include/debug/list: Same. - * include/debug/deque: Same. - * include/debug/bitset: Same. - * include/debug/formatter.h (__gnu_debug): Remove using directive. - Add using declaration for std::type_info. - * include/debug/safe_iterator.h: Add using declaration for - std::iterator_traits and std::pair. - * src/debug_list.cc: New. - * src/Makefile.am: Add debug_list.cc. - * src/Makefile.in: Regenerate. - * config/linker-map.gnu: Add _List_node_base exports for std and - __gnu_norm. - - * include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl - idiom that other containers use. - * testsuite/23_containers/vector/bool/clear_allocator.cc: New. - -2004-04-16 Paolo Carlini - - PR libstdc++/14975 - * include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt - in case of error. - * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New. - * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New. - -2004-04-16 Paolo Carlini - - * acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not - used anymore. - * config.h.in: Regenerate. - -2004-04-16 Paolo Carlini - - * config/locale/generic/monetary_members.cc - (moneypunct::_M_initialize_moneypunct): Avoid calling - btowc unnecessarily, just cast to wchar_t (the concerned chars - all belong to the basic character set). - * config/locale/generic/numeric_members.cc - (numpunct::_M_initialize_numpunct): Likewise. - * config/locale/gnu/monetary_members.cc - (moneypunct::_M_initialize_moneypunct): Likewise. - * config/locale/gnu/numeric_members.cc - (numpunct::_M_initialize_numpunct): Likewise. - -2004-04-15 Paolo Carlini - - * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl - avoid constructing unnecessarily this->name(). - -2004-04-14 Zack Weinberg - - * testsuite/Makefile.am: Add definition of AM_CXXFLAGS. - Change definition of CXX to use $(shell) instead of backticks. - * testsuite/Makefile.in: Regenerate. - -2004-04-12 Dhruv Matani - - * testsuite/performance/20_util/allocator/list_sort_search.cc: - Minor formatting fixes. - * testsuite/performance/20_util/allocator/map_mt_find.cc: - Likewise. - -2004-04-12 Paolo Carlini - - * config/locale/gnu/numeric_members.cc - (numpunct::_M_initialize_numpunct): No need to wrap - in __uselocale, since btowc is called for chars belonging to - the basic character set. - -2004-04-09 Paolo Carlini - - * testsuite/22_locale/messages/members/char/1.cc: Remove junk. - * testsuite/22_locale/messages/members/char/2.cc: Ditto. - * testsuite/22_locale/messages/members/char/3.cc: Ditto. - * testsuite/22_locale/num_get/get/char/1.cc: Ditto. - * testsuite/22_locale/num_get/get/char/2.cc: Ditto. - * testsuite/22_locale/num_get/get/char/3.cc: Ditto. - * testsuite/22_locale/num_get/get/wchar_t/1.cc: Ditto. - * testsuite/22_locale/num_get/get/wchar_t/2.cc: Ditto. - * testsuite/22_locale/num_get/get/wchar_t/3.cc: Ditto. - * testsuite/22_locale/num_put/put/char/1.cc: Ditto. - * testsuite/22_locale/num_put/put/char/2.cc: Ditto. - * testsuite/22_locale/num_put/put/char/3.cc: Ditto. - * testsuite/22_locale/num_put/put/wchar_t/1.cc: Ditto. - * testsuite/22_locale/num_put/put/wchar_t/2.cc: Ditto. - * testsuite/22_locale/num_put/put/wchar_t/3.cc: Ditto. - * testsuite/22_locale/numpunct/members/char/1.cc: Ditto. - * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Ditto. - -2004-04-07 Paolo Carlini - - * config/locale/generic/time_members.cc - (__timepunct::_M_initialize_timepunct, - __timepunct::_M_initialize_timepunct): the correct - _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively. - * config/locale/gnu/time_members.cc - (__timepunct::_M_initialize_timepunct, - __timepunct::_M_initialize_timepunct): Ditto. - * testsuite/22_locale/time_get/get_monthname/char/4.cc: New. - * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New. - - * testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk. - * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto. - * testsuite/22_locale/time_get/get_date/char/1.cc: Ditto. - * testsuite/22_locale/time_get/get_date/char/2.cc: Ditto. - * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto. - * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto. - * testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto. - * testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto. - * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto. - * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto. - * testsuite/22_locale/time_get/get_time/char/1.cc: Ditto. - * testsuite/22_locale/time_get/get_time/char/2.cc: Ditto. - * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto. - * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto. - * testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto. - * testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto. - * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto. - * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto. - * testsuite/22_locale/time_get/get_year/char/1.cc: Ditto. - * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto. - * testsuite/22_locale/time_put/put/char/1.cc: Ditto. - * testsuite/22_locale/time_put/put/char/2.cc: Ditto. - * testsuite/22_locale/time_put/put/char/3.cc: Ditto. - * testsuite/22_locale/time_put/put/char/4.cc: Ditto. - * testsuite/22_locale/time_put/put/char/5.cc: Ditto. - * testsuite/22_locale/time_put/put/char/6.cc: Ditto. - * testsuite/22_locale/time_put/put/char/7.cc: Ditto. - * testsuite/22_locale/time_put/put/char/8.cc: Ditto. - * testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto. - * testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto. - * testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto. - * testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto. - * testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto. - * testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto. - * testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto. - * testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto. - - * testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos. - -2004-04-07 Paolo Carlini - - * config/locale/gnu/monetary_members.cc - (moneypunct::_M_initialize_moneypunct): Prefer - _NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC, - and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC, - _NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING. - * config/locale/gnu/numeric_members.cc - (numpunct::_M_initialize_numpunct): Prefer DECIMAL_POINT - and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP. - -2004-04-06 Benjamin Kosnik - - Fixups for EDG front end. - * include/ext/rope: Instead of non-existent function - _Data_allocate, use allocator's allocate. Use this. - (namespace _Rope_constants): Move _S_max_rope_depth, and _Tag - enumerations from _Rope_RopeRep here. - * include/ext/ropeimpl.h: Same. - * src/ext-inst.cc (_S_min_len): Fix up definition. - - * config/locale/gnu/ctype_members.cc: Qualify base class members - with this. - * config/locale/generic/ctype_members.cc: Same. - * config/locale/gnu/messages_members.h: Same. - * config/locale/generic/messages_members.h: Same. - * src/ctype.cc: Same. - * include/bits/codecvt.h: Same. - - * include/bits/boost_concept_check.h: Declare. - (__error_type_must_be_an_unsigned_integer_type): Remove this. - (__error_type_must_be_an_integer_type): Remove this. - (__error_type_must_be_a_signed_integer_type): Remove this. - - * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast. - - * libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception - specification to definition. - (__cxa_allocate_exception): Same. - * libsupc++/eh_catch.cc (__cxa_begin_catch): Same. - * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same. - (__cxa_get_globals): Same. - - * libsupc++/del_op.cc: Add comment about freestanding. - -2004-04-05 Paolo Carlini - - * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): - The critical section is actually very small, only two assignments. - -2004-04-04 Paolo Carlini - Petur Runolfsson - - * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New, - adapted from libstdc++/11378. - -2004-04-03 Paolo Carlini - - * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out - some duplicated code. - (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used - in the single threaded case. - * testsuite/performance/20_util/allocator/list_sort_search.cc: - Reorder and renumber the tests consistently with the other testfiles. - * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto. - * testsuite/performance/20_util/allocator/map_thread.cc: Ditto. - * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto. - -2004-04-02 Paolo Carlini - - * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): - Rearrange arithmetic to avoid computing two divisions at - each deallocation. - -2004-04-01 Paolo Carlini - - * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize): - Streamline the second half, wrapping it in a single - '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding - conditionals inside loops. - -2004-04-01 Paolo Carlini - - PR libstdc++/14775 - * acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS. - * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call - GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define - to _GLIBCXX_RES_LIMITS. - (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to - HAVE_LIMIT_*. - * testsuite/testsuite_hooks.h: Declare set_file_limit. - * testsuite/testsuite_hooks.cc: Define it, using getrlimit - and setrlimit(RLIMIT_FSIZE). - * testsuite/27_io/fpos/14775.cc: New. - * config.h.in: Regenerate. - * configure: Likewise. - -2004-03-31 Paolo Carlini - - * config/locale/generic/c_locale.cc (__convert_to_v(long double&)): - In v3 uses of sscanf, the special floating-point numbers INF, - INFINITY, etc., cannot occur in input, therefore, if the latter - is too large, ERANGE is always stored in errno, no need of finitel. - -2004-03-30 Benjamin Kosnik - - PR libstdc++/14783 - * include/bits/stl_tree.h: Adjust initialization list order. - -2004-03-29 Loren J. Rittle - - * testsuite/thread/pthread7-rope.cc: Update comment to reflect test. - -2004-03-29 Paolo Carlini - - * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending - on allocator behavior, the memory pointed by data2 may well be not - trashed. - -2004-03-28 Chavdar Botev - - PR libstdc++/14245 - * include/bits/basic_string.tcc - (basic_string::basic_string(const basic_string&)): Pass to - _Rep::_M_grab the actual allocator of the string being constructed - not the default constructed one. - -2004-03-27 Benjamin Kosnik - - libstdc++ PR/13598 - * config/locale/ieee_1003.1-2001/codecvt_specializations.h - (__enc_traits::_M_destroy): New. - (__enc_traits::~__enc_traits): Use it. - (__enc_traits::operator=): Use _M_destroy, _M_init. - (__enc_traits::__enc_traits): Same. - -2004-03-27 Petur Runolfsson - - * testsuite/ext/enc_filebuf/char/13598.cc: New. - -2004-03-27 Paolo Carlini - - * include/ext/mt_allocator.h: Uglify consistently names of - variables, members and classes; tidy. - -2004-03-27 Dhruv Matani - - * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): - Deallocation loop rewrote. - -2004-03-26 Paolo Carlini - - * include/ext/mt_allocator.h (__mt_alloc<>::allocate, - __mt_alloc<>::deallocate): Protect two instances of - block->thread_id with __GTHREADS. - -2004-03-25 Gawain Bolton - - * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator - default argument in constructors. - (_Rb_tree::_M_empty_initialize): Remove. - -2004-03-25 Benjamin Kosnik - - * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers. - * testsuite/23_containers/set/operators/1_neg.cc: Same. - -2004-03-25 Dhruv Matani - - * include/bits/cpp_type_traits.h: Changed __is_pod - completely. Now, it does not use any of the previous type_traits - to detect the pod types, and it also detects function pointers as - POD types. - - * include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl, - which encapsulates the internal implementation of an rb_tree. Made - the allocator a base class of this class instead of the rb_tree, - which was not conforming. This _Rb_tree_impl class is also - specialized on whether the _Compare parameter is a POD type or - not. If so, then it maintains the comparison function as a data - member, otherwise it makes the _Compare parameter a base class of - itself. Also, _M_key_compare is now a function instead of a data - member, so that the above trick can work properly. Delegated the - initialization of the other data members to this newly created - class. Also, now other member functions of rb_tree must refer to - _M_key_compare as _M_impl._M_key_compare(). The other data members - (*) can be referenced to as _M_impl.(*), where - (*) includes _M_header, and _M_node_count. - -2004-03-25 Paolo Carlini - - * include/ext/mt_allocator.h (__mt_alloc<>::tune): - Add _M_min_bin, the size in bytes of the smallest bin. - (__mt_alloc<>::tune()): Tweak accordingly. - (__mt_alloc<>::tune(size_t, ...)): Likewise. - (__mt_alloc<>::block_record): Change to a union: members next - and thread_id are never used at the same time. - (__mt_alloc<>::allocate): Update consistently. - (__mt_alloc<>::deallocate): Likewise. - (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and - _S_bin_size for the configurable _M_min_size. - -2004-03-25 Dhruv Matani - - * include/bits/stl_list.h: Created a _List_impl class and made it - derive from the allocator, instead of the list deriving from the - allocator class, which was not conformant. Changed all references - from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same - as above (changed all references to the concerned variables). - -2004-03-25 Dhruv Matani - - * include/bits/stl_deque.h: Created a _Deque_impl class and made - it derive from the allocator, instead of the deque deriving from - the allocator class, which was not conformant. Changed all - references to the _M_start, _M_finish, _M_map, and _M_map_size to - _M_impl.*. - (_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this-> - qualification in 2 places where it was missing. - (_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as - above. - * include/bits/deque.tcc: Same as above (changed all references to - the concerned variables). - -2004-03-25 Dhruv Matani - - * include/bits/stl_vector.h: Created a _Vector_impl class and made - it derive from the allocator, instead of the _Vector_base class, - deriving from the allocator which was not conformant. Changed all - references to the _M_start, _M_finish, and _M_end_of_storage to - _M_impl.*. - * include/bits/vector.tcc: Same as above (changed all references - to the concerned variables). - -2004-03-25 Dhruv Matani - - * testsuite/23_containers/deque/cons/clear_allocator.cc: New. - * testsuite/23_containers/list/cons/clear_allocator.cc: New. - * testsuite/23_containers/vector/cons/clear_allocator.cc: New. - -2004-03-24 Dhruv Matani - - * include/ext/malloc_allocator.h: Fixed the construct function to - call global placement new instead of assignment. Added a check - after the return from malloc to check whether returned pointer is - NULL, and if so, throw std::bad_alloc(). - * include/ext/debug_allocator.h: Added a check in the deallocate - function to check whether the user has passed a NULL pointer or - not. - -2004-03-24 Benjamin Kosnik - - * docs/html/20_util/allocator.html: Add bitmap_allocator links. - -2004-03-24 Andreas Schwab - - * testsuite/lib/prune.exp (prune_g++_output): Ignore errata - warning from IA64 assembler. - -2004-03-24 Dhruv Matani - - * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this - function call __builtin_ctz instead of the while loop. - (allocate) -> If condition has __builtin_expect. - (deallocate) -> Ditto. - Renamed a few left-over variables and typedefs according to the - C++STYLE mentioned in the documentation. - Protected calls to __gthread* by __gthread_active_p(), whose value - is cached in the local variable __threads_active. - -2004-03-24 Felix Yen - - * testsuite/performance/20_util/allocator/producer_consumer.cc: - Use linear algorithm for producer. - -2004-03-24 Paolo Carlini - - * include/ext/mt_allocator.h (__mt_alloc<>::allocate, - __mt_alloc<>::deallocate): Avoid redundant conditionals. - -2004-03-23 Benjamin Kosnik - - * include/bits/locale_facets.h: Tweaks for 80 column. - (__numpunct_cache::_M_cache): Move to locale_facets.tcc. - (__moneypunct_cache::_M_cache): Same. - (num_get): Don't inherit from __num_base. - (num_put): Same. - (money_get): Don't inherit from money_base. - (money_put): Same. - (__timepunct::_M_am_pm_format): New. - (time_get::_M_extract_num): Return iterator, use ios_base as argument. - (time_get::_M_extract_name): Same. - (time_get::_M_extract_via_format): Same. - * include/bits/locale_facets.tcc: Tweaks for 80 column. - Use _M_getloc instead of getloc. - * testsuite/22_locale/money_put/put/char/9780-3.cc: New. - * testsuite/22_locale/num_put/put/char/9780-2.cc: New. - * testsuite/22_locale/time_put/put/char/9780-1.cc: New. - -2004-03-22 Paolo Carlini - - * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator. - * configure: Regenerate. - * config/allocator/pool_allocator_base.h: New. - * include/ext/pool_allocator.h: Convert to a standard-conforming - allocator. - * src/allocator.cc: Tweak instantiations. - * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc. - * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto. - * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto. - * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto. - * testsuite/performance/20_util/allocator/map_thread.cc: Ditto. - * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto. - -2004-03-22 Hans-Peter Nilsson - - * config/cpu/cris/atomicity.h (__atomic_add): Remove "static - inline" and attribute-unused. Qualify parameter __mem with - "volatile". - (__exchange_and_add): Ditto. Add back memory clobber to asm. - -2004-03-20 Paolo Carlini - - * testsuite/27_io/basic_istream/extractors_arithmetic/char/2.cc: - Remove junk. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/3.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/6.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/7.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/8.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/9.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc: - Likewise. - -2004-03-20 Paolo Carlini - - * include/std/std_valarray.h: Document DR389 [Ready]. - * docs/html/ext/howto.html: Add an entry for DR389. - -2004-03-19 Michael Eager - - * config/cpu/mips/atomicity.h: Prevent reg loads between LL and - SC instructions. - -2004-03-19 Paolo Carlini - - * testsuite/22_locale/num_get/get/char/11.cc: Remove redundant - static_cast-s. - * testsuite/22_locale/num_get/get/char/12.cc: Likewise. - * testsuite/22_locale/num_get/get/char/13.cc: Likewise. - * testsuite/22_locale/num_get/get/char/14.cc: Likewise. - * testsuite/22_locale/num_get/get/char/15.cc: Likewise. - * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise. - * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise. - * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise. - * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise. - * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise. - -2004-03-19 Paolo Carlini - Petur Runolfsson - - PR libstdc++/12077 - * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's - no way to find out the conversion used by the underlying FILE*. - * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New. - * testsuite/27_io/objects/char/9.cc: Tweak. - -2004-03-19 Paolo Carlini - - PR libstdc++/14648 - * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix - memory allocation/deallocation calls. - * testsuite/ext/14648.cc: New. - -2004-03-19 Peter Schmid - - PR libstdc++/14647 - * include/backward/bvector.h (bit_vector): Allocator is in std - namespace. - -2004-03-19 Phil Edwards - - * acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT): Set LIBICONV, - not libiconv. SUBST this variable as well. - * testsuite/Makefile.am (site.exp): New target, based on that - created by automake. Also set libiconv. - - * configure, Makefile.in, include/Makefile.in, libmath/Makefile.in, - libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in, - testsuite/Makefile.in: Regenerate. - -2004-03-16 Benjamin Kosnik - - * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is - new_allocator for all hosts. - * configure: Regenerate. - -2004-03-16 Paolo Carlini - - * testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers. - * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise. - -2004-03-15 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get<>::_M_extract): - Adjust the logic underlying the parsing of symbol to deal - correctly with an optional sign component (i.e., when either - negative_sign or positive_sign is empty) - * testsuite/22_locale/money_get/get/char/19.cc: New. - * testsuite/22_locale/money_get/get/wchar_t/19.cc: New. - -2004-03-15 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get<>::_M_extract): - Do not accept an incomplete currency symbol. - * testsuite/22_locale/money_get/get/char/18.cc: New. - * testsuite/22_locale/money_get/get/wchar_t/18.cc: New. - -2004-03-13 Benjamin Kosnik - - * config/allocator: New. - * config/allocator/bitmap_allocator_base.h: New. - * config/allocator/malloc_allocator_base.h: New. - * config/allocator/mt_allocator_base.h: New. - * config/allocator/new_allocator_base.h: New. - * include/bits/allocator.h: Include c++allocator.h. - * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New. - * aclocal.m4: Regenerate. - * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR. - * configure: Regenerate. - * include/Makefile.am (host_headers_extra): Add c++allocator.h. - * include/Makefile.in: Regenerate. - * docs/html/configopts.html: Add enable-libstdcxx-allocator. - -2004-03-12 Benjamin Kosnik - - * include/bits/allocator.h: Revert. - -2004-03-12 Paolo Carlini - - * docs/html/ext/howto.html: Add entry for DR 253 [Ready]. - * include/bits/gslice_array.h: Add comment about DR 253. - * include/bits/indirect_array.h: Likewise. - * include/bits/mask_array.h: Likewise. - * include/bits/slice_array.h: Likewise. - -2004-03-12 Benjamin Kosnik - - * testsuite/20_util/allocator/14176.cc: New. - * include/ext/mt_allocator.h: Formatting fixes. - -2004-03-11 Dhruv Matani - - * include/Makefile.am (ext_headers): Add - ${ext_srcdir}/bitmap_allocator.h . - * include/Makefile.in: Regenerate. - * docs/html/ext/ballocator_doc.txt: New file. - * include/ext/bitmap_allocator.h: New file. - * testsuite/performance/20_util/allocator/list_sort_search.cc: Add - test. - * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. - * testsuite/performance/20_util/allocator/producer_consumer.cc: Add - test for the bitmap_allocator<>. - * testsuite/performance/20_util/allocator/insert.cc: Likewise. - * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise. - * testsuite/performance/20_util/allocator/map_thread.cc: Likewise. - -2004-03-11 Paolo Carlini - - * include/std/std_complex.h (pow(const complex&, const _Tp&), - pow(const _Tp&, const complex&), pow(const complex&, - const complex&)): Fully qualify with std:: a few calls. - * testsuite/26_numerics/complex/13450.cc: Minor tweak. - -2004-03-11 Steven Bosscher - - PR libstdc++/11706 - * include/c_std/cmath.tcc (__cmath_power): Define inline. - -2004-03-10 Kelley Cook - - * configure.ac: Bump AC_PREREQ to 2.59. - -2004-03-10 Paolo Carlini - - * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos. - -2004-03-10 Paul Kienzle - Paolo Carlini - - PR libstdc++/13450 - * include/std/std_complex.h (pow(const complex&, const _Tp&), - pow(const _Tp&, const complex&)): Use cmath pow only when safe. - * testsuite/26_numerics/complex/13450.cc: New. - - * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc. - * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix. - -2004-03-10 Jerry Quinn - - PR libstdc++/3247 - * include/bits/gslice_array.h (gslice_array()): Make public. - (operator=(gslice_array)): Make public. Implement. - * include/bits/indirect_array.h (indirect_array()): Make public. - * include/bits/mask_array.h (mask_array()): Make public. - (operator=(mask_array)): Make public. Implement. - * include/bits/valarray_array.tcc (__valarray_copy): - Comment. Add versions for gslice_array and mask_array. - * testsuite/26_numerics/valarray_subset_assignment.cc: New test. - -2004-03-09 Benjamin Kosnik - - * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for - non-weak systems. - * testsuite/23_containers/vector/modifiers/swap.cc: Same. - * testsuite/23_containers/set/modifiers/swap.cc: Same. - * testsuite/23_containers/multiset/modifiers/swap.cc: Same. - * testsuite/23_containers/multimap/modifiers/swap.cc: Same. - * testsuite/23_containers/map/modifiers/swap.cc: Same. - * testsuite/23_containers/list/modifiers/swap.cc: Same. - - * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions. - -2004-03-08 Benjamin Kosnik - - PR c++/13658 - * testsuite/23_containers/deque/modifiers/swap.cc: New. - * testsuite/23_containers/list/modifiers/swap.cc: New. - * testsuite/23_containers/map/modifiers/swap.cc: New. - * testsuite/23_containers/multimap/modifiers/swap.cc: New. - * testsuite/23_containers/multiset/modifiers/swap.cc: New. - * testsuite/23_containers/set/modifiers/swap.cc: New. - * testsuite/23_containers/vector/modifiers/swap.cc: New. - -2004-03-08 Petur Runolfsson - - PR libstdc++/12658 - * testsuite/22_locale/locale/cons/12658_thread.cc: New. - -2004-03-08 Paolo Carlini - - * docs/html/ext/howto.html: Add entry for DR 103 [WP]. - * include/bits/stl_multiset.h: Add comment about DR 103. - * include/bits/stl_set.h: Likewise. - -2004-03-08 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get<>::_M_extract): - The value _space_ indicates that at least one space is required - at that position. - * testsuite/22_locale/money_get/get/char/17.cc: New. - * testsuite/22_locale/money_get/get/wchar_t/17.cc: New. - - * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks. - * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise. - - * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)): - Remove redundant conditional on __str.size(). - -2004-03-08 Benjamin Kosnik - - * include/bits/allocator.h: Switch defaults to mt_alloc. - -2004-03-06 Benjamin Kosnik - - * include/ext/mt_allocator.h (_S_initialize): If - !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex. - -2004-03-06 Benjamin Kosnik - - PR libstdc++/12658 - * src/locale_init.cc (locale::locale): Lock critical regions with - external mutexes. - (locale::global): Same. - * include/bits/concurrence.h (__glibcxx_mutex_define_initialized): - Add in once bits for cases without __GTHREAD_MUTEX_INIT. - (__glibcxx_mutex_lock): Same. - - * config/cpu/generic/atomicity.h: Remove - _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h. - * src/misc-inst.cc: Move all locking bits out of this file. - - * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK. - * src/misc-inst.cc: Same. - * config/cpu/hppa/atomicity.h: Same. - - * config/linker-map.gnu: Remove types in the signature of atomic - exports, as they may vary. - -2004-03-06 Paolo Carlini - - * include/bits/locale_facets.tcc: Tweak the comment preceding - has_facet: doesn't throw. - -2004-03-06 Paolo Carlini - - * testsuite/22_locale/money_get/get/char/1.cc: Clean up. - * 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/wchar_t/1.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. - -2004-03-06 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, - num_get<>::_M_extract_int, num_get<>::do_get(bool&), - __pad<>::_S_pad): Prefer plain operator== to traits::eq(). - * testsuite/testsuite_character.h (struct __gnu_test::character): - Provide operator==. - * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char): - Likewise. - -2004-03-05 Paolo Carlini - - * testsuite/27_io/fpos/14320-2.cc: Remove xfail. - -2004-03-04 Benjamin Kosnik - - * testsuite/23_containers/multiset/insert/1.cc: Test result string. - - * testsuite/23_containers/bitset/invalidation/1.cc: Main always - returns 0. - * testsuite/23_containers/deque/invalidation/4.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/map/invalidation/2.cc: Same. - * testsuite/23_containers/multimap/invalidation/1.cc: Same. - * testsuite/23_containers/multimap/invalidation/2.cc: Same. - * testsuite/23_containers/multiset/invalidation/1.cc: Same. - * testsuite/23_containers/multiset/invalidation/2.cc: Same. - * testsuite/23_containers/set/invalidation/1.cc: Same. - * testsuite/23_containers/set/invalidation/2.cc: Same. - * testsuite/23_containers/vector/invalidation/1.cc: Same. - * testsuite/23_containers/vector/invalidation/2.cc: Same. - * testsuite/23_containers/vector/invalidation/3.cc: Same. - * testsuite/23_containers/vector/invalidation/4.cc: Same. - -2004-03-04 Paolo Carlini - - * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to - CXXFLAGS_save. - * testsuite/lib/libstdc++.exp: Don't add it conditionally to - DEFAULT_CXXFLAGS. - * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT" - from the dg-options. - * 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/resize/1.cc: Likewise. - * testsuite/26_numerics/complex_value.cc: Likewise. - * testsuite/27_io/ios_base/storage/1.cc: Likewise. - * testsuite/27_io/ios_base/storage/2.cc: Likewise. - * testsuite/27_io/ios_base/storage/3.cc: Likewise. - * testsuite/27_io/manipulators/standard/char/2.cc: Likewise. - * testsuite/27_io/objects/char/5.cc: Likewise. - * testsuite/27_io/objects/wchar_t/5.cc: Likewise. - * testsuite/backward/11460.cc: Likewise. - * testsuite/thread/pthread7-rope.cc: Likewise. - - * testsuite/21_strings/basic_string/compare/char/1.cc: Add - missing test variable. - * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add - missing test variable. - -2004-03-04 Benjamin Kosnik - - * testsuite/20_util/allocator/1.cc: Provide explicit - instantiations for non-weak systems. - * testsuite/20_util/binders.cc: Same. - * testsuite/20_util/allocator/8230.cc: Same. - * testsuite/20_util/allocator/10378.cc: Same. - * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same. - * testsuite/22_locale/ctype/is/char/2.cc: Same. - * testsuite/thread/pthread7-rope.cc: Same. - * testsuite/thread/pthread6.cc: Same. - * testsuite/thread/pthread5.cc: Same. - * testsuite/thread/pthread4.cc: Same. - * testsuite/thread/pthread1.cc: Same. - * testsuite/ext/rope.cc: Same. - * testsuite/ext/hash_set.cc: Same. - * testsuite/ext/hash_map.cc: Same. - * testsuite/ext/concept_checks.cc: Same. - * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same. - * testsuite/25_algorithms/unique/2.cc: Same. - * testsuite/25_algorithms/unique/1.cc: Same. - * testsuite/25_algorithms/rotate.cc: Same. - * testsuite/25_algorithms/min_max.cc: Same. - * testsuite/25_algorithms/equal.cc: Same. - * testsuite/24_iterators/rel_ops.cc: Same. - * testsuite/24_iterators/iterator.cc: Same. - * testsuite/24_iterators/insert_iterator.cc: Same. - * testsuite/24_iterators/front_insert_iterator.cc: Same. - * testsuite/24_iterators/back_insert_iterator.cc: Same. - * testsuite/23_containers/vector/resize/1.cc: Same. - * testsuite/23_containers/vector/modifiers/2.cc: Same. - * testsuite/23_containers/vector/modifiers/1.cc: Same. - * testsuite/23_containers/vector/invalidation/4.cc: Same. - * testsuite/23_containers/vector/invalidation/3.cc: Same. - * testsuite/23_containers/vector/invalidation/2.cc: Same. - * testsuite/23_containers/vector/invalidation/1.cc: Same. - * testsuite/23_containers/vector/element_access/1.cc: Same. - * testsuite/23_containers/vector/cons/6513.cc: Same. - * testsuite/23_containers/vector/cons/3.cc: Same. - * testsuite/23_containers/vector/cons/2.cc: Same. - * testsuite/23_containers/vector/cons/1.cc: Same. - * testsuite/23_containers/vector/capacity/8230.cc: Same. - * testsuite/23_containers/vector/capacity/1.cc: Same. - * testsuite/23_containers/vector/bool/6886.cc: Same. - * testsuite/23_containers/stack/members/7158.cc: Same. - * testsuite/23_containers/set/invalidation/2.cc: Same. - * testsuite/23_containers/set/invalidation/1.cc: Same. - * testsuite/23_containers/queue/members/7157.cc: Same. - * testsuite/23_containers/priority_queue/members/7161.cc: Same. - * testsuite/23_containers/multiset/invalidation/2.cc: Same. - * testsuite/23_containers/multiset/invalidation/2.cc: Same. - * testsuite/23_containers/multiset/insert/1.cc: Same. - * testsuite/23_containers/multimap/invalidation/2.cc: Same. - * testsuite/23_containers/multimap/invalidation/2.cc: Same. - * testsuite/23_containers/map/operators/1.cc: Same. - * testsuite/23_containers/map/invalidation/2.cc: Same. - * testsuite/23_containers/map/invalidation/1.cc: Same. - * testsuite/23_containers/map/insert/1.cc: Same. - * testsuite/23_containers/list/operators/4.cc: Same. - * testsuite/23_containers/list/operators/3.cc: Same. - * testsuite/23_containers/list/operators/2.cc: Same. - * testsuite/23_containers/list/operators/1.cc: Same. - * testsuite/23_containers/list/modifiers/3.cc: Same. - * testsuite/23_containers/list/modifiers/2.cc: Same. - * testsuite/23_containers/list/modifiers/1.cc: Same. - * testsuite/23_containers/list/invalidation/4.cc: Same. - * testsuite/23_containers/list/invalidation/3.cc: Same. - * testsuite/23_containers/list/invalidation/2.cc: Same. - * testsuite/23_containers/list/invalidation/1.cc: Same. - * testsuite/23_containers/list/cons/9.cc: Same. - * testsuite/23_containers/list/cons/8.cc: Same. - * testsuite/23_containers/list/cons/7.cc: Same. - * testsuite/23_containers/list/cons/6.cc: Same. - * testsuite/23_containers/list/cons/5.cc: Same. - * testsuite/23_containers/list/cons/4.cc: Same. - * testsuite/23_containers/list/cons/3.cc: Same. - * testsuite/23_containers/list/cons/2.cc: Same. - * testsuite/23_containers/list/cons/1.cc: Same. - * testsuite/23_containers/list/capacity/1.cc: Same. - * testsuite/23_containers/deque/operators/1.cc: Same. - * testsuite/23_containers/deque/invalidation/4.cc: Same. - * testsuite/23_containers/deque/invalidation/3.cc: Same. - * testsuite/23_containers/deque/invalidation/2.cc: Same. - * testsuite/23_containers/deque/invalidation/1.cc: Same. - * testsuite/23_containers/deque/cons/2.cc: Same. - * testsuite/23_containers/deque/cons/1.cc: Same. - - * src/allocator.cc: Add char, wchar_t instantiations - to match extern template declarations in memory.h. - -2004-03-03 Paolo Carlini - - * include/bits/locale_facets.tcc (money_put<>::_M_insert): - Fix warning regression. - -2004-03-03 Paolo Carlini - - * include/bits/locale_facets.tcc (money_put<>::_M_insert): - Deal properly with empty __digits and negative frac_digits, - clean-up a bit. - -2004-03-03 Jonathan Wakely - - * docs/html/documentation.html: Regenerate. - -2004-03-02 Paolo Carlini - - PR libstdc++/14320 - * include/bits/postypes.h (class streamoff): Remove, now - streamoff is just typedef a 64 bit signed integer type. - (class fpos): Tweak consistently. - * testsuite/27_io/fpos/14320-1.cc: New. - * testsuite/27_io/fpos/14320-2.cc: New. - * testsuite/27_io/fpos/14320-3.cc: New. - * testsuite/27_io/fpos/14320-4.cc: New. - * testsuite/27_io/fpos/14320-5.cc: New. - * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now. - -2004-03-02 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get<>::_M_extract): - Reorganize a bit the main parsing loop, thus early detecting - an empty value component. - * testsuite/22_locale/money_get/get/char/16.cc: New. - * testsuite/22_locale/money_get/get/wchar_t/16.cc: New. - -2004-03-02 Benjamin Kosnik - - Support automake 1.8.2 - * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override. - * po/Makefile.am (EXTRA_DIST): New. - * po/Makefile.in: Regenerate. - * Makefile.in: Same. - * include/Makefile.in: Same. - * libmath/Makefile.in: Same. - * libsupc++/Makefile.in: Same. - * src/Makefile.in: Same. - * testsuite/Makefile.in: Same. - - * include/Makefile.am (${host_builddir}/gthr-posix.h): Use - __GXX_WEAK__ instead of SUPPORTS_WEAK. - (${host_builddir}/gthr-default.h): Same. - (${host_builddir}/gthr.h): Same. - * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove - _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via - -fno-weak. - * aclocal.m4: Regenerate. - * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK. - * config.h.in: Regenerate. - * configure: Same. - -2004-03-01 Benjamin Kosnik - - Support autoconf 2.59 - * acinclude.m4: Quote correctly. - * aclocal.m4: Regenerate. - * linkage.m4: Same. - -2004-03-01 Benjamin Kosnik - - * docs/html/test.html: Add multilib RUNTESTFLAGS example. - - * docs/html/18_support/howto.html: Add bit about writing to - stderr, mostly by Zack. - -2004-03-01 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get<>::_M_extract, - money_get<>::do_get(string_type&)): ... and two more. - -2004-03-01 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get<>::_M_extract): - Fix thinkos in the switch from string_type& to string& as last - argument. - -2004-03-01 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): - Also when parsing exponent sign, first look for thousands_sep - and decimal_point; tweak a bit. - * testsuite/22_locale/num_get/get/char/15.cc: New. - * testsuite/22_locale/num_get/get/wchar_t/15.cc: New. - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, - num_get<>::_M_extract_int): Reorder some conditionals. - -2004-03-01 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get<>::_M_extract): - Consistently with numpunct, enforce the requirements in - 22.2.6.3, p3 for the thousands separators; tweak a bit. - * testsuite/22_locale/money_get/get/char/15.cc: New. - * testsuite/22_locale/money_get/get/wchar_t/15.cc: New. - -2004-03-01 David Billinghurst - - * testsuite/lib/libstdc++.exp (v3-list-tests): Use - testsuite_files from correct multilib blddir when running - testsuite. - -2004-02-29 Phil Edwards - - * testsuite/Makefile.am (check-abi, check-abi-verbose): Copy - the summary file to the logfile. - * testsuite/Makefile.in: Regenerate. - -2004-02-28 John David Anglin - - * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument - volatile. - * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use - __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK. - -2004-02-28 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): - According to 22.2.3.1, p2, 'units' may be followed by 'e' with - no 'decimal-point' in the middle: in this case too we must fix - up __found_grouping; slightly tweak. - * testsuite/22_locale/num_get/get/char/14.cc: New. - * testsuite/22_locale/num_get/get/wchar_t/14.cc: New. - -2004-02-27 Eric Christopher - Phil Edwards - - * 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: - Use dg-require-iconv. - * testsuite/lib/libstdc++.exp: Load target-supports.exp. - -2004-02-27 Phil Edwards - Eric Christopher - - * testsuite/config/default.exp: Update with comments. - (${tool}_target_compile): New wrapper routine. - * testsuite/lib/dg-options.exp: New file, with dg-require-iconv. - * testsuite/lib/libstdc++.exp: Update with comments and cosmetic - fixes. - (load_gcc_lib, v3track): New routines. - (v3-init): Rename to libstdc++_init. - * testsuite/libstdc++-dg/normal.exp: No longer call v3-init. - Move DEFAULT_CXXFLAGS handling into libstdc++_init. - -2004-02-27 Benjamin Kosnik - - * config/cpu/hppa/atomicity.h: Include c++config.h to get defines. - - * src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx. - - * config/os/irix/irix5.2/atomicity.h: Merge.. - * config/os/irix/irix6.5/atomicity.h: Merge.. - * config/os/irix/atomicity.h: ...into this. - * config/os/irix/atomic_word.h: New. - * configure.host: Set atomic_word_dir for irix. - - * hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock. - * i386/atomicity.h: Same. - * m68k/atomicity.h: Same. - * sparc/atomicity.h: Same. - -2004-02-27 David Edelsohn - - * config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove - static, and inline keywords. - -2004-02-27 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, - num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate, - call reserve on the __tmp_gruping string. - (num_get<>::_M_extract_float): Don't append unnecessarily a - char() to the returned string. - * include/bits/locale_facets.tcc: Trivial reformattings. - -2004-02-27 Paolo Carlini - - * include/bits/locale_facets.h (money_get<>::_M_extract): - Change signature: now takes a plain string&. - * include/bits/locale_facets.tcc (money_get<>::_M_extract): - Update consistently the definition; use the moneypunct cache - to parse the value; use swap to change __units. - (money_get<>::do_get(long double&)): Update call of _M_extract, - avoid ctype::narrow, not correct wrt the standard. - (money_get<>::do_get(string_type&)): Likewise, update call - of _M_extract, use ctype::widen. - * src/locale-inst.cc: Tweak instantiations of _M_extract. - -2004-02-26 Ian Lance Taylor - - * testsuite/demangle/abi_examples/01.cc: Expect error -2. - * testsuite/demangle/abi_examples/02.cc: Likewise. - * testsuite/demangle/regression/cw-11.cc: Likewise. - * testsuite/demangle/regression/cw-16.cc: Change two expected - results to match libiberty demangler output. - -2004-02-26 Benjamin Kosnik - - PR libstdc++/10246 - * libsupc++/Makefile.am: Use libiberty demangler. - (c_sources): Add cp-demangle.c. - * libsupc++/Makefile.in: Regenerate. - * src/Makefile.am (sources): Remove demangle.cc. - * src/Makefile.in: Regenerate. - * include/Makefile.am (bits_headers): Move demangle.h. - (ext_headers): ...here. - * include/Makefile.in: Regenerate. - * include/bits/demangle.h: Move... - * include/ext/demangle.h: ...here. - * src/demangle.cc: Remove. - -2004-02-26 Benjamin Kosnik - - * include/bits/demangle.h: Add type template parameter to all - templates with just an Allocator template parameter. - -2004-02-25 Benjamin Kosnik - - * include/bits/atomicity.h: New, forward declarations for __atomic_add - and __exchange_and_add. - * config/cpu/generic/atomic_word.h: New, typdef for atomic word. - * config/cpu/cris/atomic_word.h: Same. - * config/cpu/sparc/atomic_word.h: Same. - * include/bits/ios_base.h (_Callback_list::_M_remove_reference): - Qualifiy with __gnu_cxx. - (_Callback_list::_M_add_reference): Same. - * include/bits/locale_classes.h (locale::facet::_M_add_reference): Add. - (locale::facet::_M_remove_reference): Same. - (locale::_Impl::_M_add_reference): Add. - (locale::_Impl::_M_remove_reference): Same. - * include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same. - (basic_string::_Rep::_M_dispose): Same. - * src/ios.cc (ios_base::xalloc): Same. - * src/ios_init.cc (ios_base::Init::Init): Same. - (ios_base::Init::~Init): Same. - * src/locale.cc (locale::id::_M_id): Same. - * config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove - static, and inline keywords. - * config/cpu/alpha/atomicity.h: Same. - * config/cpu/cris/atomicity.h: Same. - * config/cpu/generic/atomicity.h: Same. - * config/cpu/hppa/atomicity.h: Same. - * config/cpu/i386/atomicity.h: Same. - * config/cpu/ia64/atomicity.h: Same. - * config/cpu/m68k/atomicity.h: Same. - * config/cpu/mips/atomicity.h: Same. - * config/cpu/powerpc/atomicity.h: Same. - * config/cpu/s390/atomicity.h: Same. - * config/cpu/sparc/atomicity.h: Same. - - * src/Makefile.am (host_sources): Add atomicity.cc. - (atomicity.cc): New rule. - * src/Makefile.in: Regenerate. - * include/Makefile.am (host_headers): Remove host atomicity.h. - (host_headers): Add atomic_word.h. - (bits_headers): Add bits atomicity.h. - Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR. - * include/Makefile.in: Regenerate. - * configure.host (atomic_word_dir): Add. - * configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change - ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR. - * configure: Regenerate. - * config/linker-map.gnu: Export __exchange_and_add, and __atomic_add. - - * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers. - * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. - -2004-02-25 Jonathan Wakely - - * docs/html/20_util/howto.html, docs/html/20_util/allocator.html, - docs/html/ext/howto.html, docs/html/ext/mt_allocator.html: - Fix markup, more tags. - -2004-02-25 Carlo Wood - - * bits/demangle.h - namespace __gnu_cxx::demangler - (session::qualifier_list_Allocator): Add - (session::M_qualifier_list_alloc): Add - (session::decode_type_with_postfix): - Use M_qualifier_list_alloc instead of calling operator new/delete. - -2004-02-24 Paolo Carlini - - PR libstdc++/14252 - * include/bits/postypes.h (class streamoff): Add operator++(), - operator++(int), operator--() and operator--(int). - * testsuite/27_io/fpos/14252.cc: New. - -2004-02-24 Richard Sandiford - - * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds - error in handling of hex constants. - -2004-02-24 Paolo Carlini - - * include/bits/locale_facets.tcc (money_put<>::_M_insert): - Prefer basic_string::append to operator+= and a temporary. - -2004-02-23 Benjamin Kosnik - - * libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler): - Only use fputs, not write. - -2004-02-23 Benjamin Kosnik - - * include/ext/malloc_allocator.h: Add operators ==, !=. - * include/ext/new_allocator.h: Add operators ==, !=. - * include/ext/mt_allocator.h (__mt_alloc::tune): New. - (__mt_alloc::_S_get_options): New. - (__mt_alloc::_S_set_options): New. - (__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key. - (__mt_alloc::_S_no_of_bins): To _S_bin_size. - Move functions out of line, simplify, format. - * src/allocator.cc: Simplify explicit instantiations. - * include/bits/allocator.h: Tweak. - -2004-02-22 Paolo Carlini - - * include/bits/locale_facets.tcc (money_put<>::_M_insert): - Restructure formatting of value component, first dealing with - the non-decimal digits; use reserve. - -2004-02-22 Paolo Carlini - - * include/bits/locale_facets.h (class money_get): Inherit - from money_base too; tweak declaration of _M_extract, now - parameterized on _Intl too. - * include/bits/locale_facets.tcc (money_get<>::_M_extract): - Update definition to use the cache; call reserve on __res to - avoid multiple reallocations; fix parsing of sign component - according to 22.2.6.1.2, p3. - (money_get<>::do_get(long double&), - money_get<>::do_get(string_type&)): Update calls of _M_extract. - * src/locale-inst.cc: Add instantiations of - money_get::_M_extract and money_get::_M_extract. - * testsuite/22_locale/money_get/get/char/14.cc: New. - * testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto. - -2004-02-21 Mark Mitchell - - * libsupc++/vterminate.cc - (__gnu_cxx::__verbose_terminate_handler): Guard against recursive - calls to terminate. - * src/demangle.cc (__cxa_demangle): Wrap in try-catch block. - - * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do - not set RLIMIT_AS on HP-UX. - -2004-02-21 Mark Mitchell - - * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do - not set RLIMIT_AS on HP-UX. - -2004-02-21 Paolo Carlini - - * include/bits/locale_facets.h (class money_base): Add { _S_minus, - _S_zero, _S_end } enum, _S_atoms. - (struct __moneypunct_cache<>): Parameterize on _Intl too; add - _M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size, - _M_negative_sign_size, _M_atoms; tweak constructor consistently. - (__moneypunct_cache<>::~__moneypunct_cache): Update. - (__moneypunct_cache<>::_M_cache): Fill the cache. - (class moneypunct): Tweak __cache_type typedef. - (class money_put): Inherit from money_base too; tweak declaration - of _M_insert, now parameterized on _Intl. - * include/bits/locale_facets.tcc - (struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New. - (money_put<>::_M_insert): Update definition to use the cache; - call reserve on __res to avoid multiple reallocations. - (money_put<>::do_put(long double), - money_put<>::do_put(const string_type&): Update calls of _M_insert. - * config/locale/generic/monetary_members.cc - (moneypunct::_M_initialize_moneypunct, - moneypunct::_M_initialize_moneypunct, - moneypunct::_M_initialize_moneypunct, - moneypunct::_M_initialize_moneypunct): Update. - * config/locale/gnu/monetary_members.cc: Likewise. - * config/locale/gnu/monetary_members.cc - (moneypunct::~moneypunct(), - moneypunct::~moneypunct()): Likewise. - * src/globals_locale.cc: Tweak fake_money_cache_c. - * src/locale-inst.cc: Add instantiations for - money_put::_M_insert and money_put::_M_insert and - __moneypunct_cache, __moneypunct_cache. - * src/locale_facets.cc: Define money_base::_S_atoms. - * src/locale_init.cc: Update placement new of - __moneypunct_cache, __moneypunct_cache, - __moneypunct_cache, __moneypunct_cache. - - * config/locale/generic/numeric_members.cc: Clean up. - * config/locale/gnu/numeric_members.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/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. - -2004-02-20 Mark Mitchell - - * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open - FIFO for writing with ios_base::in|ios_base::out. - * 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: Open FIFO for writing - with "r+". - -2004-02-19 David Edelsohn - - * 22_locale/collate/compare/wchar_t/2.cc: Change input-charset - from iso-8859-1 to ISO8859-1. - * 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same. - * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same. - * 22_locale/collate/hash/wchar_t/2.cc: Same. - * 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same. - * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same. - * 22_locale/collate/transform/wchar_t/2.cc: Same. - * 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same. - * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same. - -2004-02-18 Paolo Carlini - - * include/bits/locale_facets.h (money_get<>::_M_extract): - New, helper for do_get. - (money_put<>::_M_insert): Likewise, for do_put. - * include/bits/locale_facets.tcc (money_get<>::_M_extract, - money_put<>::_M_insert): Define. - (money_get<>::do_get(long double&), money_get<>::do_get( - string_type&), money_put::do_put(long double), - money_put::do_put(const string_type&)): Use the helpers. - -2004-02-18 Paolo Carlini - - * config/io/basic_file_stdio.cc (__gnu_internal::xwritev): - Rewrite, avoiding recursion. - (__gnu_internal::xwrite): Minor tweaks. - -2004-02-17 Stefan Olsson - - * include/ext/mt_allocator.h: Removed the last - pointer. Deallocated blocks are now added to the front of - freelists as proposed by Felix Yen. This gives roughly 10% - performance boost and saves some memory. - * docs/html/ext/mt_allocator.html: Change due to that deallocated - blocks now are added to the front of freelists. The reason to this - approach is also explained. - -2004-02-17 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, - num_get<>::_M_extract_int, money_get<>::do_get): Simplify - grouping fidelity conditional. - -2004-02-16 Paolo Carlini - - * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: - Qualify exception with std::. - * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto. - * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto. - * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. - * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. - -2004-02-16 Paolo Carlini - - * testsuite/ext/enc_filebuf/char/13189.cc: Don't check - for now that the catch block is not reached. - * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise. - -2004-02-16 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get::do_get(string_type&)): - Fix parsing of the remaining sign characters. - * 22_locale/money_get/get/char/2.cc: Tweak: now, correctly, - the input is scanned 'til eof. - * 22_locale/money_get/get/char/4.cc: Likewise. - * 22_locale/money_get/get/wchar_t/2.cc: Likewise. - * 22_locale/money_get/get/wchar_t/4.cc: Likewise. - * 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format, - not do_pos_format: the former is the only one that matters during - input. - * 22_locale/money_get/get/wchar_t/8.cc: Likewise. - - * 22_locale/money_get/get/char/6.cc: Minor tweak. - * 22_locale/money_get/get/wchar_t/6.cc: Likewise. - -2004-02-15 David Asher - - PR libstdc++/11352 - * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't - access __olds beyond __oldlen. - -2004-02-14 Paolo Carlini - - * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make - sure the exception is actually thrown. - * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. - * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. - -2004-02-14 Paolo Carlini - - PR libstdc++/13858 - * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external): - In case of conversion errors, throw ios_failure; simplify. - * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New. - * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto. - * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak, - previously we didn't throw in case of conversion errors, instead - just returned eof(). - * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. - * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. - * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. - - * include/bits/fstream.tcc (basic_filebuf<>::overflow): - Trivial simplification of a conditional. - -2004-02-12 Paolo Carlini - - PR libstdc++/13731 (final part: writev) - * config/io/basic_file_stdio.cc (__gnu_internal::xwritev): - New, a wrapper around writev() handling partial writes. - (__basic_file::xwrite): Move to __gnu_internal and make - static. - (__basic_file::xsputn): Update call. - (__basic_file::xsputn_2): Likewise. - * config/io/basic_file_stdio.h (__basic_file::xwrite): - Don't declare, now static. - -2004-02-11 Stefan Olsson - - * docs/html/ext/mt_allocator.html: New. - -2004-02-11 Benjamin Kosnik - - * docs/html/20_util/allocator.html: New file, consolidate - allocator information here. Revamp. - * docs/html/documentation.html: Change links. - * docs/html/20_util/howto.html: Same. - * docs/html/ext/howto.html: Same. - -2004-02-11 Paolo Carlini - - PR libstdc++/13731 (first part: write) - * config/io/basic_file_stdio.h (__basic_file::xwrite): - New, declare. - * config/io/basic_file_stdio.cc (__basic_file::xwrite): - Define it: a wrapper around write() handling partial write. - (__basic_file::xsputn): Use it. - (__basic_file::xsputn_2): Likewise. - -2004-02-11 Paolo Carlini - Petur Runolfsson - - PR libstdc++/14078 - * include/std/std_istream.h (operator>>(__istream_type& (*) - (__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)), - operator>>(ios_base& (*)(ios_base&))): Declare inline. - * include/std/std_ostream.h (operator<<(__ostream_type& (*) - (__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)), - operator<<(ios_base& (*) (ios_base&))): Likewise. - * testsuite/performance/27_io/fmtflags_manipulators.cc: New. - -2004-02-10 Loren J. Rittle - - PR libstdc++/14098 - * config/linker-map.gnu: Add typeinfo and typeinfo name for - __gnu_cxx::stdio_sync_filebuf >. - - PR libstdc++/14097 - * config/linker-map.gnu: Add typeinfo and typeinfo name for - __gnu_cxx::stdio_filebuf >. - -2004-02-09 Loren J. Rittle - - * include/ext/pool_allocator.h: Include c++config.h. - -2004-02-09 Stefan Olsson - - * include/ext/mt_allocator.h: thread_id is unused in non threaded - applications and now has a ifdef to remove it completely on - compilers without thread support. Include stdlib.h due to a - compiler warning on getenv(). - -2004-02-09 Paul Brook - - * libstdc++-v3/configure.host: Explicitly check for atomicity.h file. - -2004-02-09 Paolo Carlini - - PR libstdc++/14071 - * src/locale_init.cc (locale::global(const locale&)): Use - locale::name() in order to decide whether calling setlocale. - * testsuite/22_locale/locale/global_locale_objects/14071.cc: New. - - * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()): - Avoid computing &= unnecessarily. - -2004-02-09 James E Wilson - - PR libstdc++/5625 - * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use - __builtin_extend_pointer. - -2004-02-09 Paolo Carlini - - PR libstdc++/14072 - * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale): - Don't leave dangling pointers. - * testsuite/27_io/basic_ios/imbue/14072.cc: New. - * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put - facet is needed in the final test. - -2004-02-09 Bernardo Innocenti - - * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*. - * configure: Regenerate. - -2004-02-08 Richard Henderson - - PR libstdc++/14026 - * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust - uncaughtExceptions during nested catch rethrow. - * testsuite/18_support/14026.cc: New. - -2004-02-08 Paolo Carlini - - * include/bits/basic_string.tcc (assign(const _CharT*, size_type)): - When working in place remember to set the state to sharable - (otherwise, _M_mutate does it). - -2004-02-08 Bernardo Innocenti - - * include/bits/allocator.h, include/bits/basic_ios.h, - include/bits/basic_ios.tcc, include/bits/basic_string.h, - include/bits/basic_string.tcc, include/bits/boost_concept_check.h, - include/bits/char_traits.h, include/bits/codecvt.h, - include/bits/concurrence.h, include/bits/cpp_type_traits.h, - include/bits/demangle.h, include/bits/deque.tcc, - include/bits/fstream.tcc, include/bits/functexcept.h, - include/bits/gslice.h, include/bits/gslice_array.h, - include/bits/indirect_array.h, include/bits/ios_base.h, - include/bits/istream.tcc, include/bits/list.tcc, - include/bits/locale_classes.h, include/bits/locale_facets.h, - include/bits/locale_facets.tcc, include/bits/localefwd.h, - include/bits/mask_array.h, include/bits/ostream.tcc, - include/bits/postypes.h, include/bits/slice_array.h, - include/bits/sstream.tcc, include/bits/stl_algo.h, - include/bits/stl_algobase.h, include/bits/stl_bvector.h, - include/bits/stl_construct.h, include/bits/stl_deque.h, - include/bits/stl_function.h, include/bits/stl_heap.h, - include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h, - include/bits/stl_list.h, include/bits/stl_map.h, - include/bits/stl_multimap.h, include/bits/stl_multiset.h, - include/bits/stl_numeric.h, include/bits/stl_pair.h, - include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h, - include/bits/stl_relops.h, include/bits/stl_set.h, - include/bits/stl_stack.h, include/bits/stl_tempbuf.h, - include/bits/stl_threads.h, include/bits/stl_tree.h, - include/bits/stl_uninitialized.h, include/bits/stl_vector.h, - include/bits/stream_iterator.h, include/bits/streambuf.tcc, - include/bits/streambuf_iterator.h,include/bits/stringfwd.h, - include/bits/type_traits.h, include/bits/valarray_after.h, - include/bits/valarray_array.h, include/bits/valarray_array.tcc, - include/bits/valarray_before.h, include/bits/vector.tcc: Remove - trailing whitespace. - -2004-02-06 Paolo Carlini - - * include/bits/basic_string.h: Fix comment. - -2004-02-06 Paolo Carlini - - * include/bits/stl_construct.h: Wrap overlong lines, reformat - according to the coding standards. - * include/bits/stl_pair.h: Likewise. - * include/bits/stl_raw_storage_iter.h: Likewise. - * include/bits/stl_stack.h: Likewise. - * include/bits/stl_uninitialized.h: Likewise. - * include/bits/stream_iterator.h: Likewise. - * include/bits/streambuf_iterator.h: Likewise. - * include/bits/type_traits.h: Likewise. - -2004-02-06 Paolo Carlini - - * testsuite/27_io/basic_filebuf/open/char/9507.cc: - Adjust timings. - -2004-02-05 Loren J. Rittle - - * scripts/check_performance: Support PCH. - - * scripts/check_performance (CXX): Add -DNOTHREAD. - * testsuite/performance/20_util/allocator/insert.cc: Integrate - threaded tests from insert_insert.cc. Tweak iterations, - remove special cases. - * testsuite/performance/20_util/allocator/insert_insert.cc: - Make all tests single-threaded. Tweak iterations. - * testsuite/performance/20_util/allocator/map_thread.cc: - Tweak iterations. - * testsuite/performance/20_util/allocator/producer_consumer.cc: - Likewise. - -2004-02-05 Geoffrey Keating - - PR 12179 - * .cvsignore: New. - * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not - 'gcc-lib'. Add comment about poorly-named variables. - * aclocal.m4: Regenerate. - * configure: Regenerate. - -2004-02-05 Paolo Carlini - - * include/bits/locale_facets.tcc (money_get::do_get(string_type&)): - Thousands-sep are always optional; thousands-sep are not allowed - after the decimal_point. - * testsuite/22_locale/money_get/get/char/12.cc: New. - * testsuite/22_locale/money_get/get/char/13.cc: New. - * testsuite/22_locale/money_get/get/wchar_t/12.cc: New. - * testsuite/22_locale/money_get/get/wchar_t/13.cc: New. - - * testsuite/22_locale/money_get/get/char/1.cc: Clean-up. - * 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/wchar_t/1.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/char/9.cc: Fix citation from - the standard. - * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise. - -2004-02-05 Richard Sandiford - - * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T): - Define. - * config/io/basic_file_stdio.cc (__basic_file::showmanyc): Use - it to decide whether FIONREAD should take an off_t or int argument. - -2004-02-05 Paolo Carlini - - * include/bits/stl_function.h: Minor formatting changes. - -2004-02-04 Zack Weinberg - - Revert previous change to config/abi/*/baseline_symbols.txt. - -2004-02-04 Benjamin Kosnik - Zack Weinberg - - * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode): - New function. - (__basic_file::sys_open, __basic_file::open): Use it. - (__basic_file::_M_open_mode): Delete. - * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode. - - * testsuite/27_io/basic_filebuf/close/char/9964.cc - * testsuite/27_io/basic_filebuf/open/char/9507.cc: - Correct flags to filebuf::open calls. - - * config/abi/alpha-freebsd5/baseline_symbols.txt - * config/abi/alpha-linux-gnu/baseline_symbols.txt - * config/abi/hppa-linux-gnu/baseline_symbols.txt - * config/abi/i386-freebsd4/baseline_symbols.txt - * config/abi/i386-freebsd5/baseline_symbols.txt - * config/abi/i486-linux-gnu/baseline_symbols.txt - * config/abi/ia64-linux-gnu/baseline_symbols.txt - * config/abi/mips-linux-gnu/baseline_symbols.txt - * config/abi/sparc-freebsd5/baseline_symbols.txt - * config/abi/sparc-linux-gnu/baseline_symbols.txt - * config/abi/x86_64-linux-gnu/baseline_symbols.txt: - Remove entry for __basic_file::_M_open_mode. - -2004-02-04 Loren J. Rittle - - * testsuite/performance/20_util/allocator/insert.cc (main): Tweak. - -2004-02-04 Felix Yen - - * testsuite/performance/20_util/producer_consumer.cc: New. - * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops. - -2004-02-04 Benjamin Kosnik - - * testsuite/performance/20_util/allocator.cc: Move to.. - * testsuite/performance/20_util/allocator/insert.cc: ...here. - * testsuite/performance/20_util/allocator_thread.cc: Move to... - * testsuite/performance/20_util/allocator/insert_insert.cc: ...here. - * testsuite/performance/20_util/allocator_map_thread.cc: Move to... - * testsuite/performance/20_util/allocator/map_thread.cc: ...here. - -2004-02-04 Jonathan Wakely - - * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH. - * docs/html/faq/index.txt: Regenerate. - -2004-02-04 Dhruv Matani - - * include/ext/debug_allocator.h: _M_extra now stands for the - number of extra objects instead of the number of extra bytes. - (debug_allocator::allocate): Adjust. - (debug_allocator::deallocate): Adjust. - - * include/ext/pool_allocator.h: Fix typo. - -2004-02-03 Felix Yen - Benjamin Kosnik - - * testsuite/performance/20_util/allocator.cc: Add map, - deque, set tests. - * testsuite/performance/20_util/allocator_thread.cc: Same. - -2004-02-03 Paolo Carlini - - * include/bits/basic_string.h (insert(iterator)): Remove, - non-standard and already scheduled for removal. - -2004-02-03 Paolo Carlini - - * include/bits/stl_iterator_base_funcs.h: Minor formatting - and indentation tweaks. - * include/bits/stl_iterator_base_types.h: Likewise. - * include/bits/stl_list.h: Likewise. - * include/bits/stl_map.h: Likewise. - * include/bits/stl_tempbuf.h: Likewise. - -2004-02-02 Jerry Quinn - - * include/bits/gslice.h, include/bits/gslice_array.h, - include/bits/indirect_array.h, include/bits/mask_array.h, - include/bits/slice_array.h, include/bits/stl_numeric.h, - include/std/std_valarray.h: Update copyright years. - -2004-02-02 Jerry Quinn - - * include/bits/gslice.h (gslice): Document. - * include/bits/gslice_array.h (gslice_array): Document. - * include/bits/indirect_array (indirect_array): Document. - * include/bits/mask_array (mask_array): Document. - * include/bits/slice_array.h (slice,slice_array): Document. - * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum, - adjacent_difference): Document - * include/std/std_valarray.h (valarray): Document. - -2004-02-02 Benjamin Kosnik - - * docs/html/19_diagnostics/howto.html: Move verbose terminate - documentation... - * docs/html/18_support/howto.html: Here. - * docs/html/documentation.html: Add reference here. - -2004-02-02 Paolo Carlini - - * config/locale/gnu/c++locale_internal.h: Remove prototypes - of no longer used GLIBC thread locale functions. - -2004-02-02 Eric Christopher - Zack Weinberg - - * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use - -finput-charset. - * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto. - * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto - * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto. - * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto. - * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto. - * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto. - * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto. - * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc: - Ditto. - -2004-02-02 Paolo Carlini - - * include/bits/stl_function.h: Additional minor tweaks. - * include/bits/stl_multiset.h: Likewise. - - * include/bits/stl_queue.h: Minor tweaks. - -2004-02-02 Paolo Carlini - - PR libstdc++/13976 (continued) - * include/ext/malloc_allocator.h (malloc_allocator::deallocate): - Make the second parameter unnamed, to void unused parameter - warnings. - * include/ext/new_allocator.h (new_allocator::deallocate): Ditto. - -2004-02-02 Paolo Carlini - - PR libstdc++/13976 - * include/ext/malloc_allocator.h (malloc_allocator::allocate): - Make the second parameter unnamed, to void unused parameter - warnings. - * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto. - * include/ext/new_allocator.h (new_allocator::allocate): Ditto. - -2004-02-01 Paolo Carlini - - * include/bits/stl_algo.h: Additional minor tweaks. - * 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_tree.h: Likewise. - -2004-02-01 Paolo Carlini - - * include/bits/vector.tcc (vector::_M_insert_aux(iterator)): - Remove, unused. - -2004-02-01 Paolo Carlini - - * include/bits/stl_function.h: Additional minor tweaks. - -2004-02-01 Paolo Carlini - - * include/bits/deque.tcc: Wrap overlong lines, constify - a few variables, reformat according to the coding standards. - * include/bits/list.tcc: Likewise. - * include/bits/stl_deque.h: Likewise. - * include/bits/stl_function.h: Likewise. - * include/bits/stl_iterator.h: Likewise. - * include/bits/stl_iterator_base_funcs.h: Likewise. - * include/bits/stl_iterator_base_types.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_relops.h: Likewise. - * include/bits/stl_set.h: Likewise. - -2004-02-01 Paolo Carlini - - * include/bits/stl_bvector.h: Wrap overlong lines, constify - a few variables, reformat according to the coding standards. - * include/bits/stl_tree.h: Likewise. - -2004-01-31 Paolo Carlini - - * include/bits/stl_algo.h: Minor additional reformat, add - copyright year. - * include/bits/stl_algobase.h: Add copyright year. - -2004-01-31 Paolo Carlini - - * include/bits/stl_algo.h: Wrap overlong lines, constify - a few variables, reformat according to the coding standards. - * include/bits/stl_algobase.h: Likewise. - * include/bits/stl_heap.h: Likewise. - -2004-01-31 Paolo Carlini - - * include/bits/basic_string.h (_Rep::operator[]): Remove, unused. - - * include/bits/basic_string.h: Fix two comments. - -2004-01-31 Per Bothner - - * include/ext/mt_allocator.h - (__mt_alloc::_S_thread_freelist_mutex): Guard with - __GTHREAD_MUTEX_INIT. - -2004-01-31 Paolo Carlini - - * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak. - -2004-01-30 Paolo Carlini - - * testsuite/21_strings/basic_string/cons/char/6.cc: New. - * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New. - * testsuite/performance/21_strings/string_cons_input_iterator.cc: New. - -2004-01-30 Felix Yen - - * testsuite/performance/20_util/allocator_thread.cc (do_loop): - Don't use clear, but instead assign. Use insert. - -2004-01-30 Benjamin Kosnik - - * src/demangle.cc: Add instantiations. - * src/Makefile.am: Remove special rules for demangle.lo, demangle.o. - * src/Makefile.in: Regenerate. - -2004-01-30 David Edelsohn - - * src/allocator.cc: Protect _S_get_thread_id() and - _S_thread_key_destr() with #ifdef __GTHREADS. - -2004-01-30 Paolo Carlini - - Reshuffle performance testsuite. - * testsuite/performance/allocator.cc, allocator_map_thread.cc, - allocator_thread.cc, complex_norm.cc, container_benchmark.cc, - cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc, - fstream_seek_write.cc, ifstream_extract_float.cc, - ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc, - list_create_fill_sort.cc, map_create_fill.cc, - narrow_widen_char.cc, narrow_widen_wchar_t.cc, - ofstream_insert_float.cc, ofstream_insert_int.cc, - string_append.cc, wchar_t_in.cc, wchar_t_length.cc, - wchar_t_out.cc: Split into... - * testsuite/performance/20_util/allocator.cc: New. - * testsuite/performance/20_util/allocator_map_thread.cc: New. - * testsuite/performance/20_util/allocator_thread.cc: New. - * testsuite/performance/21_strings/string_append: New. - * testsuite/performance/22_locale/is_wchar_t.cc: New. - * testsuite/performance/22_locale/narrow_widen_char.cc: New. - * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New. - * testsuite/performance/22_locale/wchar_t_in.cc: New. - * testsuite/performance/22_locale/wchar_t_length.cc: New. - * testsuite/performance/22_locale/wchar_t_out.cc: New. - * testsuite/performance/23_containers/container_benchmark.cc: New. - * testsuite/performance/23_containers/list_create_fill_sort.cc: New. - * testsuite/performance/23_containers/map_create_fill.cc: New. - * testsuite/performance/26_numerics/complex_norm.cc: New. - * testsuite/performance/27_io/cout_insert_int.cc: New. - * testsuite/performance/27_io/filebuf_copy.cc: New. - * testsuite/performance/27_io/filebuf_sputc.cc: New. - * testsuite/performance/27_io/fstream_seek_write.cc: New. - * testsuite/performance/27_io/ifstream_extract_float.cc: New. - * testsuite/performance/27_io/ifstream_extract_int.cc: New. - * testsuite/performance/27_io/ifstream_getline.cc: New. - * testsuite/performance/27_io/ofstream_insert_float.cc: New. - * testsuite/performance/27_io/ofstream_insert_int.cc: New. - -2004-01-30 Paolo Carlini - - * include/bits/basic_string.tcc (_Rep::_S_create): - Never allocate a string bigger than max_size(); always keep - __capacity and __size in sync to avoid memory leaks at - deallocation time. - -2004-01-30 Paolo Carlini - - * include/bits/basic_string.tcc (_S_construct(_InIterator, - _InIterator, const _Alloc&, input_iterator_tag)): Simplify - the double loop, streamline. - - * include/bits/basic_string.tcc: Very minor tweaks. - -2004-01-30 Loren J. Rittle - - * scripts/check_performance: Only compile with $THREAD_FLAG - when test is marked to require it. Allow multiple - compilations/executions of marked tests. - * testsuite/testsuite_performance.h (report_performance): - Report dynamic thread support status. - (report_header): Likewise. - * testsuite/performance/allocator.cc: Stabilize iteration - count. Support more allocators. Mark each allocator test to - run and report independently. - * testsuite/performance/allocator_map_thread.cc: Likewise. - * testsuite/performance/allocator_thread.cc: Likewise. - -2004-01-29 Stephen M. Webb - - * config/local/generic/c_locale.h: Change ::malloc() to new char[]. - * config/local/gnu/c_locale.h: Change ::malloc() to new char[]. - * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use - std::get_temporary_buffer() instead of duplicating its code. - Update to C++STYLE conventions. - * include/std/std_memory.h (get_temporary_buffer): Use ::operator - new() instead of std::malloc(). - (return_temporary_buffer): Use ::operator delete() instead of - std::free(). - -2004-01-29 Benjamin Kosnik - - * include/bits/allocator.h: Temporary switch to new_allocator as - the default to unjam bootstraps. - -2004-01-28 Benjamin Kosnik - - * include/Makefile.am (bits_headers): Remove allocator_traits.h. - * include/Makefile.in: Regenerate. - * include/bits/allocator_traits.h: Remove. - * include/bits/allocator.h: Remove allocator_traits.h include, and - relevant comments. - (allocator): Empty base class, inherit from the underlying allocator. - * src/allocator-inst.cc: Move __pool_alloc instantiation to... - * src/allocator.cc: ...here. New. For the underlying allocators. - Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits. - * config/linker-map.gnu: Remove __pool_alloc bits. - * src/Makefile.am (sources): Add allocator.cc. - * src/Makefile.in: Regenerate. - * testsuite/20_util/allocator/1.cc: Split second test into... - * testsuite/20_util/allocator/8230.cc: ...this. - * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector - typedef to use std::allocatore. Format. - * include/ext/pool_allocator.h: Remove allocator_traits.h include, - _Alloc_traits. - * include/ext/mt_allocator.h (__gnu_cxx): Qualify - __throw_bad_alloc calls. Don't include . - * include/ext/malloc_allocator.h: Remove include. - * include/ext/new_allocator.h (new_allocator): Same. - * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using - declaration. Switch __alloc to _Alloc. - * include/ext/hashtable.h: Remove __alloc. - * include/backward/alloc.h: Only inject allocator, not - implementation details. - - * include/ext/mt_allocator.h: Replace free with delete. - -2004-01-28 Benjamin Kosnik - - * src/globals_io.cc: Change to __gnu_internal namespace. - * src/globals_locale.cc: Same. - * src/locale_init.cc: Same. - * src/ios_init.cc: Same. - -2004-01-28 Stefan Olsson - - * include/ext/mt_allocator.h: Replaced all malloc() calls with - operator new(). Added support for the env variable - GLIBCXX_FORCE_NEW (this required the _S_init call to be the first - one in allocate() as well). Fix typos. - -2004-01-28 Paolo Carlini - - * include/bits/basic_string.h (_S_create(size_t, - const _Alloc&): Change signature to take two size_type - arguments. - * include/bits/basic_string.tcc (_S_construct(_InIterator, - _InIterator, const _Alloc&, input_iterator_tag)): Update - call, tweak a bit. - (_S_construct(_InIterator, _InIterator, const _Alloc&, - forward_iterator_tag)): Likewise. - (_S_construct(size_type, _CharT, const _Alloc&)): Likewise. - (_M_mutate(size_type, size_type, size_type)): Don't - implement the exponential growth policy, demand it to - _S_create, update call and simplify. - (_M_clone(const _Alloc&, size_type)): Likewise. - (_S_create(size_type, size_type, const _Alloc&)): Implement - the growth policy, simplify otherwise. - - * include/bits/basic_string.h (_Rep::operator[]): Tweak - signature to take a size_type, consistently with the other - members. - -2004-01-27 Benjamin Kosnik - - * testsuite/27_io/ios_base/storage/11584.cc: Correct new and - delete declarations, add include and test variable. - -2003-01-27 Jerry Quinn - - * include/bits/codecvt.h, include/bits/locale_facets.h, - include/bits/postypes.h, include/bits/stl_bvector.h, - include/bits/stl_multiset.h, include/bits/stl_set.h, - include/bits/stream_iterator.h, include/bits/streambuf_iterator.h, - include/std/std_complex.h: Document. - -2004-01-27 Jerry Quinn - - PR libstdc++/11584 - * include/bits/ios_base.h (ios_base::_M_grow_words): Add - iword/pword selector. - (ios_base::iword, ios_base::pword): Use it. - * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero - iword or pword member on alloc failure. - * testsuite/27_io/ios_base/storage/11584.cc: New test. - -2004-01-27 Ulrich Weigand - PJ Darcy - - * configure.host: Add support for *-tpf. - * crossconfig.m4: Likewise. - * configure: Regenerate. - * config/os/tpf: New directory. - * config/os/tpf/os_defines.h: New file. - * config/os/tpf/ctype_base.h: Likewise. - * config/os/tpf/ctype_inline.h: Likewise. - * config/os/tpf/ctype_noninline.h: Likewise. - -2004-01-27 Paolo Carlini - - PR libstdc++/13884 - * include/bits/sstream.tcc: Guard use of extern template. - -2004-01-27 Paolo Carlini - - * include/bits/basic_string.tcc - (basic_string(const basic_string&, size_type, size_type), - basic_string(const basic_string&, size_type, size_type, - const _Alloc&)): Avoid unnecessarily constructing iterators. - -2004-01-26 Paolo Carlini - - * config/locale/generic/c_locale.cc: Fix throw messages - to use the __N marker. - * config/locale/gnu/c_locale.cc: Likewise. - * config/locale/ieee_1003.1-2001/codecvt_specializations.h: - Likewise. - * docs/html/17_intro/C++STYLE: Likewise. - * include/bits/basic_ios.tcc: Likewise. - * include/bits/fstream.tcc: Likewise. - * include/bits/vector.tcc: Likewise. - * include/ext/ropeimpl.h: Likewise. - * include/std/std_bitset.h: Likewise. - * src/ios.cc: Likewise. - * src/locale.cc: Likewise. - * src/localename.cc: Likewise. - -2004-01-26 Paolo Carlini - - * include/bits/basic_string.h (_M_replace_aux): Use the - __N marker in throw message. - * include/bits/basic_string.tcc (assign(const _CharT*, - size_type), insert(size_type, const _CharT*, size_type), - replace(size_type, size_type, const _CharT*, size_type), - reserve, _Rep::_S_create, resize, _M_replace_dispatch): - Likewise. - - * include/bits/basic_string.h, include/bits/basic_string.tcc: - Fold overlong lines, minor formatting changes. - -2004-01-26 Paolo Carlini - - * include/bits/basic_string.h (replace(iterator, iterator, - const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT. - (replace(iterator, iterator, const _CharT*)): Ditto. - (replace(iterator, iterator, const _CharT*, size_type)): - Add missing _GLIBCXX_DEBUG_PEDASSERT. - -2004-01-26 Paolo Carlini - - * include/bits/basic_string.tcc (replace(size_type, - size_type, const _CharT*, size_type)): Implement optimized - in-place algorithm for non-overlapping ranges. - * testsuite/21_strings/basic_string/replace/char/6.cc: New. - * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New. - - * include/bits/basic_string.tcc (insert(size_type, - const _CharT*, size_type)): Tweak slightly. - -2004-01-26 Andreas Schwab - - * config/locale/gnu/monetary_members.cc: Restore locale before - rethrowing exception. - -2004-01-25 Paolo Carlini - - * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe): - Define inline here. - * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe): - Move inline. - - * include/bits/basic_string.tcc: Very minor tweaks. - -2004-01-25 Paolo Carlini - - * testsuite/performance/string_append.cc: Increase number - of iterations. - -2004-01-25 Paolo Carlini - - * include/bits/basic_string.h (erase(size_type, size_type), - erase(iterator), erase(iterator, iterator)): Call _M_replace_safe - instead, thus avoiding redundant check for length_error. - - * include/bits/basic_string.h: Tweak some comments. - -2004-01-24 Paolo Carlini - - * include/bits/basic_string.tcc (operator+(const _CharT*, - const basic_string&)): No need to go through the append - taking two iterators. - -2004-01-24 Paolo Carlini - - * include/bits/basic_string.tcc (rfind(_CharT, size_type)): - Revert last change to use std::min: machine language is worse. - (find_last_of(const _CharT*, size_type, size_type)): Ditto. - (find_last_not_of(const _CharT*, size_type, size_type)): Ditto. - (find_last_not_of(_CharT, size_type)): Ditto. - - * include/bits/basic_string.tcc (insert(size_type, const _CharT*, - size_type)): Discard the value returned by _M_check. - (replace(size_type, size_type, const _CharT*, size_type)): Ditto. - (append(const basic_string&, size_type, size_type)): Ditto. - (copy(_CharT*, size_type, size_type)): Ditto. - (compare(size_type, size_type, const basic_string&)): Ditto. - (compare(size_type, size_type, const basic_string&, - size_type, size_type)): Ditto. - (compare(size_type, size_type, const _CharT*)): Ditto. - (compare(size_type, size_type, const _CharT*, size_type)): Ditto. - -2004-01-24 Paolo Carlini - - * include/bits/basic_string.h (insert(size_type, - const basic_string&, size_type, size_type)): Define inline here. - * include/bits/basic_string.tcc (insert(size_type, - const basic_string&, size_type, size_type)): Move inline. - -2004-01-24 Paolo Carlini - - * include/bits/basic_string.h (assign(const basic_string&, - size_type, size_type)): Define inline here. - (replace(size_type, size_type, const basic_string&, - size_type, size_type)): Ditto. - (_M_replace_dispatch(iterator, iterator, _InputIterator, - _InputIterator, __false_type)): Only declare. - (_M_replace(iterator, iterator, _InputIterator, - _InputIterator)): Remove. - * include/bits/basic_string.tcc (assign(const basic_string&, - size_type, size_type)): Move inline. - (replace(size_type, size_type, const basic_string&, - size_type, size_type)): Ditto. - (_M_replace_dispatch(iterator, iterator, _InputIterator, - _InputIterator, __false_type)): Define, now does also what - _M_replace did before. - * src/string-inst.cc (_M_replace): Don't instantiate. - - * include/bits/basic_string.tcc (find(const _CharT*, - size_type, size_type)): Tidy. - (rfind(_CharT, size_type)): Ditto. - (find_first_not_of(const _CharT*, size_type, size_type)): Ditto. - (find_first_not_of(_CharT, size_type)): Ditto. - (find_last_not_of(const _CharT*, size_type, size_type)): Ditto. - (find_last_not_of(_CharT, size_type)): Ditto. - -2004-01-23 Paolo Carlini - - PR libstdc++/13838 - * include/debug/bitset (operator|=): Fix typo. - * testsuite/23_containers/bitset/operations/13838.cc: New. - -2004-01-23 Paolo Carlini - - * include/bits/basic_string.tcc (insert(size_type, - const _CharT*, size_type __n)): Fix length_error check. - (replace(size_type, size_type, const _CharT*, size_type): - Ditto; call _M_replace_safe. - (_M_replace_aux(size_type, size_type, size_type, _CharT): - Fix length_error check. - (_M_replace(iterator, iterator, _InputIterator, - _InputIterator)): Ditto, tweak. - (_M_replace_safe(size_type, size_type, const _CharT*, - size_type)): Remove length_error check. - - * include/bits/basic_string.tcc (append(const basic_string&), - append(const basic_string&, size_type, size_type)): Tweak - comment. - - * include/bits/basic_string.tcc (copy(_CharT*, size_type, - size_type)): If __n == 0 don't call traits::copy. - -2004-01-23 Stefan Olsson - - * include/ext/mt_allocator.h: Reduce lock contention. - -2004-01-23 Paolo Carlini - - PR libstdc++/13831 - * include/bits/fstream.tcc (underflow): Remove unused - variable. - * include/bits/streambuf_iterator.h (equal): Ditto. - * include/bits/locale_facets.h (_M_convert_from_char): - Ditto. - -2004-01-23 Kaveh R. Ghazi - - PR c/13814 - * config/linker-map.gnu (nan): Delete. - * libmath/mathconf.h (NAN, nan): Delete. - * linkage.m4 (nan): Don't check for it. - * libmath/nan.c: Delete file. - - * config.h.in, configure: Regenerate. - -2004-01-23 Paolo Carlini - - * include/bits/basic_string.h (push_back(_CharT)): - Call _M_replace_aux. - (insert(size_type, const basic_string&)): Trivial tweak. - (insert(size_type, size_type, _CharT)): Call _M_replace_aux. - (insert(iterator, _CharT)): Ditto. - (erase(size_type, size_type)): Ditto. - (erase(iterator)): Ditto. - (erase(iterator, iterator)): Ditto. - (replace(size_type, size_type, size_type, _CharT)): Ditto. - -2004-01-23 Loren J. Rittle - - libstdc++/13823 - * testsuite/performance/allocator_map_thread.cc: New test. - -2004-01-22 Paolo Carlini - - * include/bits/locale_facets.tcc - (money_put::do_put(..., long double)): Use the basic_string - constructor for char arrays, not that for C-strings, to pass - __digits to do_put(..., const string_type&): __ws isn't - null-terminated. - -2004-01-22 Paolo Carlini - - * include/bits/basic_string.h (_M_replace_safe): Change - signatures to take size_types and const _CharT*. - (_M_replace_aux): Likewise, takes size_types instead of - iterators. - (append(size_type, _CharT)): Update call. - (assign(size_type, _CharT)): Ditto. - (replace(iterator, iterator, size_type, _CharT)): Ditto. - (_M_replace_dispatch(iterator, iterator, _Integer, - _Integer, __true_type)): Ditto. - * include/bits/basic_string.tcc (assign(const _CharT*, - size_type)): Ditto. - (insert(size_type, const _CharT*, size_type)): Ditto. - (replace(size_type, size_type, const _CharT*, - size_type)): Ditto. - (_M_replace(iterator, iterator, _InputIterator, - _InputIterator)): Ditto. - (append(const basic_string&)): Ditto. - (append(const basic_string&, size_type, size_type): Ditto. - (append(const _CharT*, size_type): Ditto. - (_M_replace_safe, _M_replace_safe): Change definitions - accordingly, simplify. - * string-inst.cc (_M_replace_safe): Don't instantiate. - -2004-01-21 Paolo Carlini - - * include/bits/basic_string.tcc (append(const basic_string&)): - Revert previous change. - (append(const basic_string&, size_type, size_type)): Revert - previous change, use _M_check and _M_limit. - -2004-01-21 Paolo Carlini - - * include/bits/basic_string.h (_M_check): Change to return - a checked __pos and take an additional const char* argument. - (_M_fold): Rename to _M_limit, change to return a size_type, - corresponding to the __off limited to the actual length. - (insert(size_type, size_type, _CharT)): Update call, call - replace. - (insert(iterator, _CharT)): Call replace(iterator, iterator, - size_type, _CharT) instead. - (erase(size_type, size_type)): Update calls. - (replace(size_type, size_type, size_type, _CharT)): Ditto. - (substr(size_type, size_type)): Use _M_check. - * include/bits/basic_string.tcc (basic_string(const basic_string&, - size_type, size_type)): Update calls. - (basic_string(const basic_string&, size_type, size_type, - const _Alloc&)): Ditto. - (assign(const basic_string&, size_type, size_type)): Use the - new _M_check and _M_limit. - (insert(size_type, const basic_string&, size_type, size_type): - Ditto. - (insert(size_type, const _CharT*, size_type)): Ditto. - (replace(size_type, size_type, const _CharT*, size_type): Ditto. - (replace(size_type, size_type, const basic_string&, - size_type, size_type)): Ditto. - (append(const basic_string&)): Ditto. - (append(const basic_string&, size_type, size_type)): Ditto. - (copy(_CharT*, size_type, size_type)): Ditto. - (compare(size_type, size_type, const basic_string&)): Ditto. - (compare(size_type, size_type, const basic_string&,size_type, - size_type)): Ditto. - (compare(size_type, size_type, const _CharT*)): Ditto. - (compare(size_type, size_type, const _CharT*, size_type)): Ditto. - -2004-01-19 Stefan Olsson - - * include/ext/mt_allocator.h: If a thread, when it dies, still has - memory on it's freelist this memory is not returned to global - list. Simplification of deallocate so that memory is always - returned to the calling thread id's freelist instead of to - global. Fix typos. Add volatile where appropriate. - -2004-01-19 Loren J. Rittle - - * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered. - * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but - use __gnu_cxx::stdio_sync_filebuf instead; allow buffered stream. - -2004-01-19 Paolo Carlini - - * src/debug.cc: Make sure all the names are prefixed with - double (or single) underscore. - -2004-01-19 Paolo Carlini - - * src/debug.cc: Trivial formatting change. - -2004-01-19 Paolo Carlini - - * include/bits/basic_string.tcc (_S_construct(size_type, - _CharT, const _Alloc&)): Remove redundant try/catch. - (_M_mutate(size_type, size_type, size_type)): Ditto. - (_M_clone(const _Alloc&, size_type)): Ditto. - -2004-01-18 Paolo Carlini - - * include/bits/basic_string.h (c_str()): Simplify, due to - 21.3.4 the internal representation is always kept null-terminated. - * include/bits/basic_string.tcc (_M_clone): Null-terminate. - * testsuite/21_strings/basic_string/element_access/char/4.cc: New. - * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc: - Ditto. - -2004-01-18 Paolo Carlini - - * include/bits/basic_string.h (append(size_type, _CharT)): - Moved inline, just call _M_replace_aux, no source iterators at - risk of being clobbered. - (assign(size_type, _CharT)): Call directly _M_replace_aux. - (_M_replace(iterator, iterator, _InputIterator, _InputIterator, - input_iterator_tag)): Remove fifth unused argument. - (_M_replace_dispatch(iterator, iterator, _InputIterator, - _InputIterator, __false_type)): Update call. - * include/bits/basic_string.tcc (replace(size_type, size_type, - const _CharT*, size_type)): Update call. - (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak - throw string literal. - (_M_replace_safe(iterator, iterator, _ForwardIterator, - _ForwardIterator)): Likewise. - (_M_replace(iterator, iterator, _InputIterator, _InputIterator, - input_iterator_tag)): Remove fifth unused argument. - (append(size_type __n, _CharT __c)): Move inline. - * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator, - const C*, const C*, input_iterator_tag)): Remove fifth unused - argument. - -2004-01-16 Benjamin Kosnik - - * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards. - * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same. - -2004-01-16 Danny Smith - - * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling - mkfifo for mingw32. - -2004-01-15 Stefan Olsson - - * include/ext/mt_allocator.h: Reuse thread id's as soon as - possible by changing the behaviour of thread_freelist to do - push_front when threads die instead of push_back. - -2004-01-14 Paolo Carlini - - * include/bits/locale_facets.h (struct __numpunct_cache): - Add member _M_grouping_size, caching the length of _M_grouping. - (__numpunct_cache<>::_M_cache): Assign the latter. - (__verify_grouping): Move declaration... - * include/bits/locale_facets.tcc (__verify_grouping): - ... here, change signature to take a const char* and a size_t - for the grouping; not a template anymore. - (__add_grouping, num_put::_M_group_int, num_put::_M_group_float): - Likewise change signature and tweak consistently. - (num_get::_M_extract_float, num_get::_M_extract_int, - num_put::_M_insert_int, num_put::_M_insert_float, - money_get::do_get(string_type&), money_get::do_put(string_type)): - Update callers. - * config/locale/generic/numeric_members.cc - (numpunct<>::_M_initialize_numpunct): Assign the new member. - * config/locale/gnu/numeric_members.cc - (numpunct<>::_M_initialize_numpunct): Likewise. - * src/locale-inst.cc (__add_grouping): Tweak signature. - (__verify_grouping): Don't instantiate, not a template anymore. - - * include/bits/locale_facets.h: Rename _M_truename_len -> - _M_truename_size, _M_falsename_len -> _M_falsename_size. - * include/bits/locale_facets.tcc: Likewise. - * config/locale/generic/numeric_members.cc: Likewise. - * config/locale/gnu/numeric_members.cc: Likewise. - -2004-01-14 Stefan Olsson - - * include/ext/mt_allocator.h: Fixups. - * testsuite/performance/allocator.cc: Enable __mt_alloc tests. - * testsuite/performance/allocator_thread.cc: Same. - -2004-01-13 Benjamin Kosnik - - * testsuite/performance/ifstream_extract_float.cc: Add higher - precision tests. - * testsuite/performance/ofstream_insert_float.cc: Same. - -2004-01-13 Paolo Carlini - - * src/locale-misc-inst.cc (__convert_from_v(long), - __convert_from_v(unsigned long), __convert_from_v(long long), - __convert_from_v(unsigned long long)): Remove, unused. - -2004-01-13 Benjamin Kosnik - - * testsuite/performance/ifstream_extract_float.cc: New. - * testsuite/performance/ofstream_insert_float.cc: Float generation - matches above. - - * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into... - * 20_util/auto_ptr/1.cc: ...this. - * 20_util/auto_ptr/2.cc: Same. - * 20_util/auto_ptr/3.cc: Same. - * 20_util/auto_ptr/3946.cc: Same. - * 20_util/auto_ptr/4.cc: Same. - * 20_util/auto_ptr/5.cc: Same. - * 20_util/auto_ptr/6.cc: Same. - * 20_util/auto_ptr/7.cc: Same. - * 20_util/auto_ptr/assign_neg.cc - * 20_util/pairs.cc: Break into... - * 20_util/pair/1.cc: ...this. - * 20_util/pair/2.cc: Same. - * 20_util/pair/3.cc: Same. - * 20_util/pair/4.cc: Same. - -2004-01-13 Paolo Carlini - - * include/bits/locale_facets.tcc (num_get::do_get(void*&)): - Set correctly just basefield, the only group that matters. - -2004-01-13 Paolo Carlini - - * include/ext/rope (_Rope_rep_alloc_base): Eliminate. - (_Rope_rep_base): Inherit directly from the rope allocator; - use rebinding instead of _Alloc_traits; pick up data member - from _Rope_rep_alloc_base. - (_Rope_alloc_base): Eliminate. - (_Rope_base): Inherit directly from the rope allocator; use - rebinding instead of _Alloc_traits; pick up data member from - _Rope_alloc_base. - (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation, - rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak. - -2004-01-13 Paolo Carlini - - PR libstdc++/13650 - * include/bits/basic_string.tcc (compare(size_type, size_type, - const _CharT*, size_type)): Implement correctly the resolution - of DR 5: basically, s is a char array, -not- a C string. - * include/bits/basic_string.h: Tweak some comments. - * testsuite/21_strings/basic_string/compare/char/13650.cc: New. - * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New. - -2004-01-12 Andreas Tobler - - * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for - Solaris. - -2004-01-12 Paolo Carlini - - * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: - Use try_mkfifo. - * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: - Likewise. - -2004-01-12 Paolo Carlini - - * include/bits/locale_facets.h (struct __numpunct_cache): - Add members _M_truename_len and _M_falsename_len, caching - the lengths of _M_truename and _M_falsename. - (__numpunct_cache<>::_M_cache): Assign the latter. - * include/bits/locale_facets.tcc (num_get::do_get(bool&), - num_put::do_put(bool)): Use the new members, thus avoiding - computing string lengths again and again. - * config/locale/generic/numeric_members.cc - (numpunct<>::_M_initialize_numpunct): Assign the new members. - * config/locale/gnu/numeric_members.cc - (numpunct<>::_M_initialize_numpunct): Likewise. - -2004-01-12 Mark Mitchell - - * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it. - * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define - it. - * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo - and remove Cygwin XFAIL. - * 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/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. - -2004-01-11 Gabriel Dos Reis - - * include/std/std_complex.h (std::complex<>::real): Return a - reference. Add non-const overload. - (std::complex<>::real): Likewise. - (std::real): Likewise. - (std::imag): Likewise. - (std::operator+): Tidy. - (std::operator-): Likewise. - (std::operator*): Likewise. - (std::operator/): Likewise. - (std::operator>>): Likewise. - -2004-01-11 Paolo Carlini - - PR libstdc++/13582 - * include/bits/fstream.tcc (imbue): Exploit the external - buffer to imbue 'on the fly' a new locale and convert its - remainder with the new codecvt facet. - (underflow): Tweak slightly to deal with this special case. - * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New. - * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto. - * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto. - * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto. - * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto. - -2004-01-10 Paolo Carlini - - * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html: - Import Revision 28. - -2004-01-10 Paolo Carlini - - PR libstdc++/13630 - * include/bits/locale_classes.h (class locale): Fix category - typedef. - * testsuite/22_locale/locale/13630.cc: Add. - -2004-01-10 Giovanni Bajo - - * include/bits/locale_facets.h: Make a name really dependent. This - will be needed when Core Issue 224 is implemented. - -2004-01-09 Paolo Carlini - - * testsuite/performance/allocator.cc: Demangle typeid(obj).name(). - * testsuite/performance/allocator_thread.cc: Likewise. - -2004-01-07 Benjamin Kosnik - - * crossconfig.m4: Add LFS, io bits to linux cross config. - * acconfig.h: Remove obsolete bits, reorder. - * config.h.in: Regenerate. - * aclocal.m4: Same. - * configure: Same. - -2004-01-07 Gawain Bolton - - * include/bits/stl_list.h: - * include/bits/list.tc: - * src/list.cc: - Performance enhancements for destructor, push_front(), - push_back(), pop_front(), pop_back(), sort() - Eliminated static_casts where possible. - Moved code out of header files into new src/list.cc - implementation file for library where possible. - Remove inheritance from iterator class and create separate - classes for non-constant and constant iterators. - * include/bits/stl_tree.h (_Rb_tree class): - * src/tree.cc: - Only erase contents in destructor. - Eliminate unnecessary initialization in assignment operator. - Optimize for the nominal case by not checking whether - container is empty in clear(). - Re-order test in _M_insert() to improve performance. - Move initialization of new node's left & right pointers to - src/tree.cc to where new node's colour is initialized - and to reduce the amount of inline code. - Use _M_leftmost() and _M_end() to improve readability where - appropriate. - Create separate classes for non-constant and constant - iterators to clarify code, avoid extra template parameters and - casting away constness. - -2004-01-07 Benjamin Kosnik - - * src/Makefile.am (sources): Add list.cc, tree.cc. - * src/stl_tree.cc: Move to... - * src/tree.cc: ...here. - * src/list.cc: Add. - * config/linker-map.gnu: Tweaks. - * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors. - * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors. - - * bits/stl_vector.h: Column wrap comments. - -2004-01-07 Loren J. Rittle - - (re-open) PR libstdc++/12658 - * src/locale_init.cc (locale::locale): Remove ill-scoped mutex. - (locale::global): Likewise. - -2004-01-07 Paolo Carlini - - * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc: - Remove redundant #include. - * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise. - * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise, - re-enable normal testing. - * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant - #include. - * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise. - * testsuite/27_io/basic_ostream/inserters_character/char/1.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_character/char/2.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_character/char/3.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_character/char/4.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_character/char/5.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_character/char/6.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_character/char/8.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc: - More properly, #include . - * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc: - Remove redundant #include. - * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise. - * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove - redundant DejaGnu directive. - * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove - redundant #include. - -2004-01-06 Benjamin Kosnik - Stefan Olsson - - * scripts/check_performance: Use -pthread. - * testsuite/performance/allocator.cc: Tweaks, add list. - * testsuite/performance/allocator_thread.cc: New. - -2004-01-06 Jerry Quinn - - * include/bits/locale_facets.h: Document public classes and - functions. - * include/bits/locale_facets.tcc (time_get::_M_extract_via_format): - Add comment. - -2004-01-06 Paolo Carlini - - * testsuite/27_io/basic_istream/extractors_other/char/1.cc: - Remove redundant #includes. - * testsuite/27_io/basic_istream/extractors_other/char/2.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_other/char/3.cc: - Likewise. - * testsuite/27_io/basic_istream/get/char/1.cc: Likewise. - * testsuite/27_io/basic_istream/get/char/2.cc: Likewise. - * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise. - * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise. - * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise. - * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise. - * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise. - * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise. - * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise. - * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise. - * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise. - * testsuite/27_io/basic_istream/read/char/1.cc: Likewise. - * testsuite/27_io/basic_istream/read/char/2.cc: Likewise. - * testsuite/27_io/basic_istream/read/char/3.cc: Likewise. - * testsuite/27_io/basic_istream/readsome/char/6746-1.cc: - Likewise. - * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: - Likewise. - * testsuite/27_io/basic_istream/readsome/char/8258.cc: - Likewise. - * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: - Likewise. - * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: - Likewise. - * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise. - * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise. - * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise. - -2004-01-04 Paolo Carlini - - * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: - Remove redundant #includes. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc: - Likewise. - * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: - Likewise. - * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: - Likewise. - -2004-01-04 Mark Mitchell - - PR c++/12226 - * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy - constructor. - * testsuite/27_io/basic_fstream/4.cc: Likewise. - * testsuite/27_io/basic_ifstream/4.cc: Likewise. - * testsuite/27_io/basic_ios/4.cc: Likewise. - * testsuite/27_io/basic_iostream/4.cc: Likewise. - * testsuite/27_io/basic_istream/4.cc: Likewise. - * testsuite/27_io/basic_istingstream/4.cc: Likewise. - * testsuite/27_io/basic_ofstream/4.cc: Likewise. - * testsuite/27_io/basic_ostream/4.cc: Likewise. - * testsuite/27_io/basic_ostringstream/4.cc: Likewise. - * testsuite/27_io/basic_stringbuf/5.cc: Likewise. - * testsuite/27_io/basic_stringstream/4.cc: Likewise. - -2004-01-04 Paolo Carlini - - * config/locale/generic/numeric_members.cc (_M_initialize_numpunct): - Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in; - always use double underscored names. - * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct): + * 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. - * include/bits/locale_facets.h (struct __numpunct_cache): - Dimension _M_atoms_out and _M_atoms_in one position smaller. - (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out - and _M_atoms_in. diff --git a/libstdc++-v3/ChangeLog-2004 b/libstdc++-v3/ChangeLog-2004 new file mode 100644 index 00000000000..9b58b9ed936 --- /dev/null +++ b/libstdc++-v3/ChangeLog-2004 @@ -0,0 +1,6707 @@ +2004-12-31 Paolo Carlini + + * include/tr1/type_traits (is_member_function_pointer): Provide a + workaround for c++/19076, correct for functions with up to 15 + arguments. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_member_pointer/is_member_pointer.cc: Uncomment "XFAILed" tests; + add a test for variadic functions. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_scalar/is_scalar.cc: Uncomment "XFAILed" tests. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_enum/is_enum.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_member_function_pointer/is_member_function_pointer.cc: Likewise; + add a test for variadic functions. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_member_object_pointer/is_member_object_pointer.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_assign/has_nothrow_assign.cc: Uncomment "XFAILed" tests. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_constructor/has_nothrow_constructor.cc: Likewise. + * 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_constructor/has_trivial_constructor.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_copy/has_trivial_copy.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_destructor/has_trivial_destructor.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + is_pod/is_pod.cc: Likewise. + +2004-12-30 Paolo Carlini + + * include/tr1/type_traits: Add has_trivial_copy, has_trivial_assign, + has_nothrow_copy, has_nothrow_assign. + * testsuite/testsuite_tr1.h: Add test_copy_property and + test_assign_property. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_assign/has_nothrow_assign.cc: New. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_assign/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_copy/has_nothrow_copy.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_copy/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_assign/has_trivial_assign.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_assign/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_copy/has_trivial_copy.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_copy/typedefs.cc: Likewise. + +2004-12-29 Jonathan Wakely + + * include/bits/vector.tcc (erase(iterator, iterator), + operator=, _M_assign_aux(_ForwardIterator, _ForwardIterator, + forward_iterator_tag)): Qualify all calls to std::copy(). + +2004-12-29 Paolo Carlini + + Minimal fixes for -fno-exceptions. + * src/bitmap_allocator.cc (free_list::_M_get): Use + __throw_exception_again, instead of plain throw. + * testsuite/testsuite_abi.cc (get_symbol, examine_symbol, + create_symbols): Likewise. + * testsuite/testsuite_hooks.cc (verify_demangle, + run_tests_wrapped_locale, run_tests_wrapped_env): Likewise. + (try_named_locale): Wrap the whole catch in __EXCEPTIONS. + +2004-12-29 Paolo Carlini + + * include/tr1/type_traits: Add has_nothrow_constructor. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_constructor/has_nothrow_constructor.cc: New. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_constructor/typedefs.cc: Likewise. + +2004-12-28 David Edelsohn + + * configure.host (aix4*|aix5*): Add atomic_word_dir. + * config/os/aix/atomic_word.h: New file. + +2004-12-27 Jason Merrill + + Add memory barriers to the double-checked locking used for static + initialization. + * libsupc++/guard.cc (__test_and_acquire): Define default. + (_GLIBCXX_GUARD_TEST_AND_ACQUIRE, __set_and_release) + (_GLIBCXX_GUARD_SET_AND_RELEASE): Likewise. + (recursion_push, recursion_pop): New abstraction functions. + (__cxa_guard_acquire): Use _GLIBCXX_GUARD_TEST_AND_ACQUIRE. + (__cxa_guard_release): Use _GLIBCXX_GUARD_SET_AND_RELEASE. + * config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST): Rename + from _GLIBCXX_GUARD_ACQUIRE and reverse sense. + (_GLIBCXX_GUARD_SET): Rename from _GLIBCXX_GUARD_RELEASE. + * config/cpu/arm/cxxabi_tweaks.h: Likewise. + * config/cpu/alpha/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER) + (_GLIBCXX_WRITE_MEM_BARRIER): Define. + * config/cpu/powerpc/atomic_word.h: Likewise. + * config/cpu/sparc/atomic_word.h: Likewise. + * config/cpu/generic/atomic_word.h: Define them, commented out. + * include/bits/atomicity.h: Define defaults. + * config/cpu/ia64/atomic_word.h (__test_and_acquire) + (__set_and_release): New inlines. + (_GLIBCXX_GUARD_TEST_AND_ACQUIRE): Define. + (_GLIBCXX_GUARD_SET_AND_RELEASE): Define. + + * libsupc++/guard.cc (acquire_1): Use __builtin_trap instead of + abort(); + +2004-12-27 Paolo Carlini + + * include/tr1/type_traits: Rework the _DEFINE_SPEC* macros. + +2004-12-26 Paolo Carlini + + * include/tr1/type_traits (__is_enum_helper): Slightly simplify, + make __convert non template. + +2004-12-26 Paolo Carlini + + * include/tr1/type_traits: Implement is_pod, has_trivial_constructor, + and has_trivial_destructor. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_constructor/has_trivial_constructor.cc: New. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_constructor/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_destructor/has_trivial_destructor.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_destructor/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + is_pod/is_pod.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + is_pod/typedefs.cc: Likewise. + +2004-12-25 Paolo Carlini + + * include/tr1/type_traits (is_enum): Minor tweak. + +2004-12-25 Paolo Carlini + + * include/tr1/type_traits: Implement is_enum (usual caveats about + the nasty consequences of c++/19076...). + * testsuite/testsuite_tr1.h: Add ConvType. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_scalar/is_scalar.cc: New. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_scalar/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_enum/is_enum.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_enum/typedefs.cc: Likewise. + +2004-12-24 Paolo Carlini + + * include/tr1/type_traits: Add missing undef. + +2004-12-24 Paolo Carlini + + * include/tr1/type_traits: Implement is_member_object_pointer, + is_member_function_pointer. N.B. Due to c++/19076, the latter + doesn't really work at the moment (a rather ugly work around + will be provided in case the front-end bug doesn't get fixed + soon); generalize and extend the _DEFINE_SPEC macros. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_member_pointer/is_member_pointer.cc: New. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_member_pointer/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_member_function_pointer/is_member_function_pointer.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_member_function_pointer/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_member_object_pointer/is_member_object_pointer.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_member_object_pointer/typedefs.cc: Likewise. + +2004-12-22 Paolo Carlini + + * include/tr1/type_traits_fwd.h: New, forward declarations. + * include/tr1/type_traits: Clean-up. + * include/Makefile.am: Add. + * include/Makefile.in: Regenerate. + +2004-12-20 Paolo Carlini + + * testsuite/27_io/basic_istream/peek/wchar_t/1.cc: New. + * testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise. + * testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise. + * testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise. + * testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise. + * testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise. + * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise. + * testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise. + * testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise. + * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise. + * testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise. + * testsuite/27_io/basic_istream/seekg/wchar_t/ + exceptions_badbit_throw.cc: Likewise. + * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise. + * testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise. + * testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise. + * testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise. + * testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise. + * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise. + * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise. + * testsuite/27_io/basic_istream/tellg/wchar_t/ + exceptions_badbit_throw.cc: Likewise. + * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise. + * testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise. + * testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise. + + * testsuite/data/wistream_extractor_other-1.tst: New. + * testsuite/data/wistream_extractor_other-1.txt: Likewise. + * testsuite/data/wistream_extractor_other-2.tst: Likewise. + * testsuite/data/wistream_seeks-1.tst: Likewise. + * testsuite/data/wistream_seeks-1.txt: Likewise. + * testsuite/data/wistream_unformatted-1.tst: Likewise. + * testsuite/data/wistream_unformatted-1.txt: Likewise. + + * testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc: + Use wistream_extractor_other-1.txt. + + * testsuite/27_io/basic_istream/peek/char/6414.cc: Minor clean-up. + * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise. + * testsuite/27_io/basic_istream/read/char/1.cc: Likewise. + * testsuite/27_io/basic_istream/read/char/2.cc: Likewise. + +2004-12-19 Paolo Carlini + + * testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: New. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 01.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 02.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 03.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 06.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 07.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 08.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 09.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 10.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 11.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 12.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 13.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + 9555-ia.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + exceptions_badbit_throw.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + exceptions_failbit.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/ + exceptions_failbit_throw.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_character/wchar_t/ + 1.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_character/wchar_t/ + 11095-i.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_character/wchar_t/ + 2.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_character/wchar_t/ + 3.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_character/wchar_t/ + 9555-ic.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + 1.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + 2.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + 3.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + 9318-in.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + 9424-in.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + 9555-io.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + error_failbit.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + exceptions_badbit_throw.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + exceptions_failbit_throw.cc: Likewise. + * testsuite/27_io/basic_istream/extractors_other/wchar_t/ + exceptions_null.cc: Likewise. + + * testsuite/27_io/basic_istream/extractors_other/char/2.cc: Minor + tweaks. + + * testsuite/testsuite_io.h (struct fail_buf): Fix type of + dummy return values. + +2004-12-19 Dhruv Matani + + * include/ext/bitmap_allocator.h: Make doxygen style comments for + internal functions and classes. + +2004-12-19 Dhruv Matani + + * docs/html/20_util/allocator.html: Correct link. + * docs/html/ext/ballocator_doc.txt: Remove. + * docs/html/ext/ballocator_doc.html: Add. + +2004-12-16 Danny Smith + + PR target/18997 + * config/os/newlib/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK): + Define to 0 for __CYGWIN__. + +2004-12-16 Paolo Carlini + + * include/tr1/type_traits: Implement add_const, add_volatile, + and add_cv. + * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ + add_const.cc: New. + * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ + add_cv.cc: Likewise. + * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ + add_volatile.cc: Likewise. + +2004-12-16 Paolo Carlini + + * include/tr1/type_traits: Implement is_function. + (struct __sfinae_types, struct __is_function_helper): New. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_object/is_object.cc: New. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_object/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_function/is_function.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_function/typedefs.cc: Likewise. + +2004-12-13 Paolo Carlini + + * include/tr1/type_traits (extent): Minor tweak (i.e., public). + +2004-12-12 Paolo Carlini + + * include/tr1/type_traits: Minor tweak. + * testsuite/tr1/4_metaprogramming/type_properties/extent/ + typedefs.cc: Fix date. + +2004-12-12 Paolo Carlini + + * include/tr1/type_traits: Implement extent. + * testsuite/tr1/4_metaprogramming/type_properties/extent/ + extent.cc: New. + * testsuite/tr1/4_metaprogramming/type_properties/extent/ + typedefs.cc: Likewise. + +2004-12-12 Paolo Carlini + + * include/tr1/type_traits: Implement is_pointer, remove_pointer, + and add_pointer; reformat. + (_DEFINE_PRIMARY_SPEC_HELPER, _DEFINE_PRIMARY_SPEC): Generalize + and rename to _DEFINE_SPEC_HELPER and _DEFINE_SPEC; update uses. + * testsuite/tr1/4_metaprogramming/pointer_modifications/ + add_pointer.cc: New. + * testsuite/tr1/4_metaprogramming/pointer_modifications/ + remove_pointer.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_pointer/is_pointer.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_pointer/typedefs.cc: Likewise. + + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_reference/is_reference.cc: Slightly tweak consistently. + +2004-12-11 Paolo Carlini + + * include/tr1/type_traits: Implement rank. + * testsuite/testsuite_tr1.h (test_property): Generalize to any + value_type. + (test_category, test_relationship): Slightly tweak consistently. + * testsuite/tr1/4_metaprogramming/type_properties/rank/ + rank.cc: New. + * testsuite/tr1/4_metaprogramming/type_properties/rank/ + typedefs.cc: Likewise. + + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_compound/is_compound.cc: New. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_compound/typedefs.cc: Likewise. + + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_arithmetic/is_arithmetic.cc: Tweak consistently with the + testsuite_tr1.h changes. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_fundamental/is_fundamental.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_array/is_array.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_floating_point/is_floating_point.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_integral/is_integral.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_reference/is_reference.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_void/is_void.cc: Likewise. + * testsuite/tr1/4_metaprogramming/relationships_between_types/ + is_same/is_same.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/is_const/ + is_const.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/is_volatile/ + is_volatile.cc: Likewise. + +2004-12-10 Paolo Carlini + + * include/tr1/type_traits: Implement remove_const, remove_volatile, + and remove_cv. + * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ + remove_const.cc: New. + * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ + remove_cv.cc: Likewise. + * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ + remove_volatile.cc: Likewise. + + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_array/is_array.cc: Slightly tweak consistently, remove typedefs, + add a few tests. + +2004-12-09 Paolo Carlini + + * include/tr1/type_traits: Implement remove_extent and + remove_all_extents. + * testsuite/tr1/4_metaprogramming/array_modifications/ + remove_all_extents.cc: New. + * testsuite/tr1/4_metaprogramming/array_modifications/ + remove_extent.cc: Likewise. + +2004-12-08 Paolo Carlini + + * include/tr1/type_traits: Implement is_same, add_reference and + remove_reference. + * testsuite/testsuite_tr1.h (test_relationship): New. + * testsuite/tr1/4_metaprogramming/reference_modifications/ + add_reference.cc: New. + * testsuite/tr1/4_metaprogramming/reference_modifications/ + remove_reference.cc: Likewise. + * testsuite/tr1/4_metaprogramming/relationships_between_types/ + is_same/is_same.cc: Likewise. + * testsuite/tr1/4_metaprogramming/relationships_between_types/ + is_same/typedefs.cc: Likewise. + + * testsuite/tr1/4_metaprogramming/type_properties/is_const/ + is_const.cc: Minor tweaks. + * testsuite/tr1/4_metaprogramming/type_properties/is_volatile/ + is_volatile.cc: Likewise. + +2004-12-08 David Edelsohn + + * Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and + PICFLAG. + * Makefile.in: Regenerated. + +2004-12-07 Paolo Carlini + + * include/tr1/type_traits: Implement is_const and is_volatile. + * testsuite/testsuite_tr1.h (test_property): New. + * testsuite/tr1/4_metaprogramming/type_properties/ + is_const/is_const.c: New. + * testsuite/tr1/4_metaprogramming/type_properties/ + is_const/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + is_volatile/is_volatile.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + is_volatile/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_arithmetic/is_arithmetic.cc: Slightly tweak to use ClassType + from testsuite_tr1.h. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_fundamental/is_fundamental.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_array/is_array.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_floating_point/is_floating_point.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_integral/is_integral.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_reference/is_reference.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_void/is_void.cc: Likewise. + +2004-12-06 Paolo Carlini + + * include/tr1/type_traits: Implement is_reference. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_reference/is_reference.cc: New. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_reference/typedefs.cc: Likewise. + +2004-12-05 Paolo Carlini + + PR libstdc++/18837 + * testsuite/testsuite_performance.h: Fix mallinfo macros for + hpux. + +2004-12-04 Richard Henderson + + * testsuite/26_numerics/complex/pow.cc: Use -mieee on alpha. + +2004-12-04 Richard Henderson + + * include/ext/malloc_allocator.h: Include cstdlib. + +2004-12-04 Paolo Carlini + + * include/tr1/type_traits: New. + * include/Makefile.am: Add. + * include/Makefile.in: Regenerate. + * testsuite/testsuite_tr1.h: New. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_arithmetic/is_arithmetic.cc: New. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_arithmetic/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_fundamental/is_fundamental.cc: Likewise. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_fundamental/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/helper_classes/ + true_false_type.cc: Likewise. + * testsuite/tr1/4_metaprogramming/helper_classes/ + true_false_type_typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/helper_classes/ + typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_array/is_array.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_array/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_floating_point/is_floating_point.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_floating_point/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_integral/is_integral.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_integral/typedefs.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_void/is_void.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_void/typedefs.cc: Likewise. + +2004-12-02 Paolo Carlini + + * testsuite/testsuite_io.h (class sync_buf): New, templatized + version of sync_streambuf; add typedefs for streambuf/wstreambuf. + (class fail_buf): Likewise, for fail_streambuf. + (class fail_num_get): Templatize and add char/wchar_t typedefs. + (class fail_num_put): Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/ + exceptions_badbit_throw.cc: Use the latter. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/ + exceptions_failbit_throw.cc: Likewise. + * testsuite/27_io/basic_ostream/inserters_arithmetic/char/ + exceptions_badbit_throw.cc: Likewise. + * testsuite/27_io/basic_ostream/inserters_arithmetic/char/ + exceptions_failbit_throw.cc: Likewise. + +2004-12-01 Paolo Carlini + + * testsuite/27_io/basic_istream/get/wchar_t/1.cc: New. + * testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise. + * testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise. + * testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise. + * testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise. + * testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise. + * testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise. + +2004-11-29 Paolo Carlini + + * testsuite/21_strings/basic_string/capacity/char/18654.cc: Use + better names. + * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: Same. + +2004-11-29 Paolo Carlini + + PR libstdc++/18654 + * include/bits/basic_string.tcc (_Rep::_S_create): When shrinking, + do not round to pagesize. + * testsuite/21_strings/basic_string/capacity/char/18654.cc: New. + * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: New. + +2004-11-27 Paolo Carlini + + PR libstdc++/18690 + * include/tr1/utility (get(pair), get(const pair)): Change + occurrences of _I to _Int. + +2004-11-27 Paolo Carlini + + * testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Fix typo. + * testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise. + + * testsuite/22_locale/time_put/put/char/17038.cc: Use VERIFY. + * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise. + * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise. + * testsuite/27_io/basic_ios/exceptions/char/2.cc: Likewise. + +2004-11-26 Paolo Carlini + + DR 243. get and getline when sentry reports failure [WP] + * include/bits/istream.tcc (istream<>::get, istream<>::getline): + Store a null character only if the array has a non-zero size. + * src/istream.cc (istream::getline, istream::getline): + Likewise. + * testsuite/27_io/basic_istream/get/char/3.cc: New. + * testsuite/27_io/basic_istream/getline/char/6.cc: New. + * testsuite/27_io/basic_istream/getline/wchar_t/6.cc: New. + * docs/html/ext/howto.html: Add an entry for DR 243. + + * testsuite/27_io/basic_istream/getline/wchar_t/1.cc: New. + * testsuite/27_io/basic_istream/getline/wchar_t/2.cc: New. + * testsuite/27_io/basic_istream/getline/wchar_t/3.cc: New. + * testsuite/27_io/basic_istream/getline/wchar_t/4.cc: New. + * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: New. + +2004-11-24 Kelley Cook + + * configure: Regenerate for libtool change. + +2004-11-24 Kelley Cook + + * Makefile.in, aclocal.m4: Regenerate with automake 1.9.3. + * include/Makefile.in: Likewise. + * libmath/Makefile.in: Likewise. + * libsupc++/Makefile.in: Likewise. + * po/Makefile.in: Likewise. + * src/Makefile.in: Likewise. + * testsuite/Makefile.in: Likewise. + +2004-11-24 Jonathan Wakely + + * docs/html/ext/howto.html: Fix incorrect link. + * docs/html/documentation.html: Regenerate. + +2004-11-24 Nathan Myers + + * include/bits/streambuf_iterator.h + (istreambuf_iterator<>::operator++(), operator++(int)): Don't + check unnecessarily the return value of _M_sbuf->sbumpc(). + +2004-11-24 Benjamin Kosnik + + * include/Makefile.am (tr1_headers): Add utility, functional. + * include/Makefile.in: Regenerate. + +2004-11-24 Chris Jefferson + + * include/tr1/tuple(operator!=): Change operator + definition to match (draft) technical report. + (operator>): Same. + (operator<=): Same. + (operator>=): Same. + (ref): Move to include/tr1/functional. + (cref): Same. + (tuple_size): Move to include/tr1/utility. + (tuple_element<,pair>): Same. + * include/tr1/functional: New. + * include/tr1/utility: New. + * testsuite/tr1/6_container/utility/pair.cc: New. + +2004-11-24 Volker Reichelt + + * config/locale/ieee_1003.1-2001/codecvt_specializations.h + (do_out, do_unshift, do_in): Remove redundant typedef. + +2004-11-23 Chris Jefferson + + * testsuite/testsuite_iterators.h: New. + * testsuite/25_algorithms/search_n/iterator.cc: New. + * testsuite/performance/25_algorithms/search_n.cc: New. + +2004-11-23 John David Anglin + + * testsuite/lib/libstdc++.exp: Use new procs in target-libpath.exp. + +2004-11-23 Benjamin Kosnik + + * docs/doxygen/doxygroups.cc: Add std::tr1 namespace. + * docs/doxygen/run_doxygen: Renames for std::tr1. + * docs/doxygen/user.cfg.in: Add cxxabi.h. + * include/bits/*.tcc: Add file markup. + * include/bits/allocator.h: Add link to allocator.html. + * include/bits/atomicity.h: Add file markup. + * include/bits/concurrence.h: Same. + * include/bits/functexcept.h: Same. + * include/ext*: Adjust file markup, remove GCC3 bits. + * include/std/*: Adjust file markup, remove bits about renamed files. + * libsupc++/cxxabi.h: Add file markup. + * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust line numbers. + +2004-11-22 Benjamin Kosnik + + * include/bits/locale_facets.h (isspace, isprint, isupper, + islower, isalpha, isdigit, ispunct, isxdigit, isalnum, isgraph, + toupper, tolower): Add doxygen markup. + (codecvt_byname, ctype_byname, numpunct_byname, collate_byname, + time_get_byname, time_put_byname, moneypunct_byname, + messages_byname): Same. + * include/std/std_fstream.h: Remove superfluous markup. + * include/std/std_sstream.h: Same. + * include/std/std_streambuf.h: Same. + * include/ext/enc_filebuf.h: Adjust markup. + * include/ext/stdio_filebuf.h: Same. + * include/ext/stdio_sync_filebuf.h: Same. + * include/bits/codecvt.h: Same. + * config/os/gnu-linux/ctype_base.h: Same. + * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same. + * include/tr1/array: Add markup. + * include/tr1/tuple: Same. + + * docs/doxygen/run_doxygen: Print arguments. + + * docs/doxygen/user.cfg.in: Tweaks. + +2004-11-19 Jonathan Wakely + + * include/bits/basic_string.h, include/bits/locale_classes.h, + include/bits/valarray_after.h, include/bits/valarray_before.h, + include/ext/stdio_sync_filebuf.h, include/std/std_algorithm.h, + include/std/std_functional.h, include/std/std_memory.h, + include/std/std_numeric.h: Doxygen fixes. + +2004-11-19 Paolo Carlini + + * testsuite/22_locale/time_get/get_date/char/1.cc: In the checks + use, more correctly (and consistently with other testcases) the + return value of the facet (the iterator arguments are by value). + * testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise. + * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise. + * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise. + * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise. + * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise. + * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise. + * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise. + * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise. + * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise. + * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise. + * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise. + +2004-11-19 Jonathan Wakely + + * Makefile.am (doxygen, doxygen-maint, doxygen-man): Remove extra '$' + from host_alias variable. + * Makefile.in: Regenerate. + +2004-11-19 Chris Jefferson + + * include/bits/stl_list.h (list::back, list::back const): + Don't decrement temporary. + +2004-11-19 Paolo Carlini + + * include/bits/stl_deque.h (deque::front, deque::front const, + deque::back, deque::back const): Slightly tweak for stylistic + consistency. + +2004-11-18 Paolo Carlini + + * testsuite/26_numerics/numeric/sum_diff.cc: Use VERIFY. + * testsuite/ext/array_allocator/1.cc: Likewise. + * testsuite/ext/array_allocator/2.cc: Likewise. + * testsuite/ext/array_allocator/3.cc: Likewise. + * testsuite/ext/enc_filebuf/char/13598.cc: Likewise. + +2004-11-18 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::do_get(void*&)): + If the failbit is set, don't set it again. + (money_get<>::_M_extract): Minor stylistic tweak: consistently + with the other functions, take care of eofbit at the end. + +2004-11-18 Paolo Carlini + + DR 434. bitset::to_string() hard to use [Ready] + * include/std/std_bitset.h (to_string): Add three overloads, taking + fewer template arguments. + * docs/html/ext/howto.html: Add an entry for DR 434. + * testsuite/23_containers/bitset/to_string/1.cc: New. + +2004-11-17 Paolo Carlini + + * include/bits/istream.tcc (getline(basic_istream<>&, basic_string<>&, + _CharT)): Remove temporary kludge for libstdc++/15002. + * include/std/std_streambuf.h (class basic_streambuf): Declare + getline(basic_istream<>&, basic_string<>&, _CharT) as friend. + * include/bits/basic_string.h (getline(basic_istream<>&, + basic_string<>&, _CharT)): Declare optimized specializations for + char and wchar_t, using protected members of basic_streambuf. + * src/istream.cc: Define the latter. + +2004-11-16 Jonathan Wakely + + * docs/html/19_diagnostics/howto.html: Document change from + _GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4. + +2004-11-16 Matthias Klose + + * docs/doxygen/user.cfg.in: Set HAVE_DOT to NO. + +2004-11-16 Matthias Klose + + * Makefile.am (doxygen, doxygen-maint, doxygen-man): Use host_alias + instead of build_alias. + * docs/doxygen/run_doxygen: Likewise. + * docs/doxygen/user.cfg.in: Likewise. + * Makefile.in: Regenerate. + +2004-11-15 Paolo Carlini + + * include/bits/streambuf.tcc (__copy_streambufs): Provide + a generic version of the function, not using the protected + members of basic_streambuf. + * include/std/std_streambuf.h (__copy_streambufs): Declare + optimized specializations for char and wchar_t. + * src/streambuf.cc: New file, define the latter. + * src/Makefile.am: Add. + * src/Makefile.in: Regenerate. + +2004-11-15 Matthias Klose + + * docs/doxygen/run_doxygen: Add --build_alias option, + substitute it in docs/doxygen/user.cfg.in. + * docs/doxygen/user.cfg.in: Use build_alias. + * Makefile.am: Pass --build_alias to run_doxygen + * Makefile.in: Regenerate. + +2004-11-15 Benjamin Kosnik + + * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.4. + +2004-11-15 Paolo Carlini + + * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 33. + +2004-11-14 Paolo Carlini + + * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): + Slightly tweak for clarity (also leads to measurably better code). + +2004-11-12 Andrew Pinski + + PR other/14264 + * testsuite/lib/libstdc++.exp: Set LC_ALL and LANG to C. + +2004-11-09 Paolo Carlini + + * include/bits/locale_facets.tcc (time_get<>::do_get_weekday, + time_get<>::do_get_monthname): Absolutely avoid dereferencing + end iterators. + + * include/bits/locale_facets.tcc (time_get<>::_M_extract_name): + Minor tweak. + +2004-11-08 Benjamin Kosnik + Doug Gregor + + PR libstdc++/17664 + * src/debug.cc : Just use one mutex. + +2004-11-08 Benjamin Kosnik + + * configure.ac (libtool_VERSION): To 6:4:0. + * configure: Regenerate. + + * config/linker-map.gnu: Slide new symbols into GLIBCXX_3.4.4. + + * docs/doxygen/user.cfg.in: Add more extension files. + +2004-11-08 Paolo Carlini + + * include/bits/streambuf_iterator.h (class istreambuf_iterator): + Consistently use _M_c to cache the current char, i.e., not only + when operator++(int) is involved; change _M_c to mutable. + (_M_get()): Always save the return value of _M_sbuf->sgetc() into + _M_c. + * testsuite/22_locale/time_get/get_monthname/char/1.cc: Fix + (long standing) typo. + * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise. + * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise. + * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise. + +2004-11-08 Paolo Carlini + + * include/bits/istream.tcc (getline(char_type*, streamsize, + char_type), ignore(streamsize), ignore(streamsize, int_type)): + Restore a generic version of the functions, not using the + protected members of basic_streambuf. + * include/std/std_istream.h (getline(char_type*, streamsize, + char_type), ignore(streamsize), ignore(streamsize, int_type)): + Declare optimized specializations for char and wchar_t. + * src/istream.cc: New file, define the latter. + * src/Makefile.am: Add. + * src/Makefile.in: Regenerate. + +2004-11-07 Paolo Carlini + + * testsuite/performance/27_io/ifstream_getline-2.cc: New. + +2004-11-05 Benjamin Kosnik + + PR libstdc++/17218 + PR libstdc++/17223 + * docs/doxygen/filter: Remove. + * docs/doxygen/filter.sed: Remove. + * docs/doxygen/mainpage.html: Add link to functions. + * docs/doxygen/run_doxygen: Changes due to new source filtering. + * docs/doxygen/user.cfg.in: Update to doxygen 1.3.9.1, tweak. + * include/bits/allocator.h: Tweaks for doxygen. + * include/bits/char_traits.h: Same. + * include/bits/codecvt.h: Same. + * include/bits/concurrence.h: Same. + * include/bits/locale_facets.h: Same. + * include/ext/array_allocator.h: Same. + * include/ext/debug_allocator.h: Same. + * include/ext/malloc_allocator.h: Same. + * include/ext/mt_allocator.h: Same. + * include/ext/new_allocator.h: Same. + * include/ext/pool_allocator.h: Same. + * include/ext/stdio_sync_filebuf.h: Same. + * include/std/std_memory.h: Same. + * include/tr1/array: Same. + * include/tr1/tuple: Same. + * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same. + * config/os/gnu-linux/ctype_base.h: Same. + +2004-11-04 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::do_get(bool&)): + Evaluate __beg == __end the exact strict minimum number of times. + +2004-11-03 Jonathan Wakely + + * include/bits/stl_numeric.h (partial_sum, adjacent_difference): + Avoid dereferencing two times __first in the prologue. + +2004-11-03 Paolo Carlini + + * include/bits/stl_numeric.h: Trivial formatting fixes. + +2004-11-03 Benjamin Kosnik + + * include/bits/c++config: Spacing. + * libsupc++/del_op.cc: Include c++config.h. + * libsupc++/del_opnt.cc: Same. + * libsupc++/del_opv.cc: Same. + * libsupc++/del_opvnt.cc: Same. + * libsupc++/new_op.cc: Same. + * libsupc++/new_opnt.cc: Same. + * libsupc++/new_opv.cc: Same. + * libsupc++/new_opvnt.cc: Same. + +2004-11-03 Aaron W. LaFramboise + + * config/os/bsd/darwin/os_defines.h + (_GLIBCXX_WEAK_DEFINITION): Define. + * include/bits/c++config (_GLIBCXX_WEAK_DEFINITION): Define. + * libsupc++/del_op.cc (operator delete(void *)): Use + _GLIBCXX_WEAK_DEFINITION. + * libsupc++/del_opnt.cc + (operator delete(void *, const std::nothrow_t&)): Same. + * libsupc++/del_opv.cc (operator delete[](void *)): Same. + * libsupc++/del_opvnt.cc + (operator delete[](void *, const std::nothrow_t&)): Same. + * libsupc++/new_op.cc (operator new(std::size_t)): Same. + * libsupc++/new_opnt.cc + (operator new(std::size_t, const std::nothrow_t&)): Same + * libsupc++/new_opv.cc (operator new[](std::size_t)): Same. + * libsupc++/new_opvnt.cc + (operator new[](std::size_t, const std::nothrow_t&)): Same. + +2004-11-02 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_int): + Evaluate *__beg the exact strict minimum number of times; likewise + for __beg != __end; slightly simplify main parsing loop. + +2004-11-02 Benjamin Kosnik + Lothar Werzinger + + PR libstdc++/17664 + * src/debug.cc: Include concurrence, use mutexes. + (_Safe_iterator_base::_M_attach): Here. + (_Safe_iterator_base::_M_detach): Here. + +2004-11-02 Benjamin Kosnik + + PR libstdc++/17922 + * include/bits/ios_base.h : Add enum values. + * testsuite/testsuite_hooks.h (bitmask_operators): Add function. + * testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New. + * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New. + * testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New. + * testsuite/27_io/ios_base/types/iostate/case_label.cc: New. + * testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New. + * testsuite/27_io/ios_base/types/openmode/case_label.cc: New. + * testsuite/27_io/ios_base/types/seekdir/case_label.cc: New. + + * config/io/c_io_stdio.h (__ios_flags): Mark deprecated. + * src/ios.cc: Same. + + * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers. + * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. + +2004-11-01 Momchil Velikov + + PR libstdc++/18185 + * libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled + exceptions. + * testsuite/thread/18185.cc: New. + +2004-11-01 Chris Jefferson + + PR libstdc++/18159 + * include/tr1/tuple (get(pair)): Change occurrences of _I to _Int. + (get(const pair)): Likewise. + +2004-11-01 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): + Evaluate *__beg the exact strict minimum number of times; likewise + for __beg != __end; in the main parsing loop, call ++__beg in two + places only. The former is also a correctness issue, because, + according to the standard (22.2.2.1.2, Stage 2), 'in' shall be + dereferenced only one time for each increment. + +2004-10-31 Benjamin Kosnik + + PR c++/16728 + * testsuite/23_containers/set/modifiers/16728.cc: New. + +2004-10-30 Paolo Carlini + + * include/ext/bitmap_allocator.h (allocate(size_type)): Minor tweak. + + * testsuite/ext/bitmap_allocator/check_delete.cc: New. + * testsuite/ext/bitmap_allocator/check_new.cc: Likewise. + +2004-10-29 Geoffrey Keating + + * configure.host (darwin*): Set os_include_dir to a separate directory + for Darwin. + * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind, + 'darwin'. + * config/locale/darwin/ctype_members.cc: New. + * config/os/bsd/darwin/ctype_base.h: New. + * config/os/bsd/darwin/ctype_inline.h: New. + * config/os/bsd/darwin/ctype_noninline.h: New. + * config/os/bsd/darwin/os_defines.h: New. + + * testsuite/22_locale/locale/cons/12658_thread-1.cc: Only xfail + on Linux. + +2004-10-29 Chris Jefferson + + * include/bit/stl_algo.h (find_first_of(,,,,pred)): + Remove invalid EqualOpConcept. + * testsuite/25_algorithms/find_first_of/concept_check_1.cc: New. + +2004-10-29 Benjamin Kosnik + + * testsuite/testsuite_allocator.h (check_delete): New. + (check_new): Simplify. + * testsuite/ext/array_allocator/check_delete.cc: New. + * testsuite/ext/array_allocator/check_new.cc: Simplify. + * testsuite/ext/debug_allocator/check_delete.cc: New. + * testsuite/ext/debug_allocator/check_new.cc: Simplify. + * testsuite/ext/malloc_allocator/check_delete.cc: New. + * testsuite/ext/malloc_allocator/check_new.cc: Simplify. + * testsuite/ext/mt_allocator/check_delete.cc: New. + * testsuite/ext/mt_allocator/check_new.cc: Simplify. + * testsuite/ext/new_allocator/check_delete.cc: New. + * testsuite/ext/new_allocator/check_new.cc: Simplify. + * testsuite/ext/pool_allocator/check_delete.cc: New. + * testsuite/ext/pool_allocator/check_new.cc: Simplify. + +2004-10-28 Chris Jefferson + + PR libstdc++/18159 + * include/tr1/tuple: Fix, change formatting. + +2004-10-28 Benjamin Kosnik + + * include/ext/mt_allocator.h (__common_pool_policy): Add template + template parameter for pool class type. + (__per_type_pool_policy): Same. + (__mt_allocator): Don't inherit policy. Qualify policy_type calls. + * testsuite/ext/mt_allocator/check_deallocate_null.cc: Fix. + * testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: Same. + * 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/mt_allocator/instantiate.cc: Same. + * testsuite/ext/mt_allocator/tune-1.cc: Same. + * testsuite/ext/mt_allocator/tune-2.cc: Same. + * testsuite/ext/mt_allocator/tune-3.cc: Same. + * testsuite/ext/mt_allocator/tune-4.cc: Same. + +2004-10-28 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): + Cache *__beg in __c when parsing exponent sign too. + (num_get<>::do_get(..., bool&)): Cache *__beg. + (money_get<>::_M_extract)): Likewise, in money_base::value. + +2004-10-27 Paolo Carlini + + * include/bits/basic_string.h (assign(const basic_string&)): + Move out of line... + * include/bits/basic_string.tcc: ... here. + +2004-10-27 Paolo Carlini + + * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe): + Move out of line... + * include/bits/basic_string.tcc: ... here. + +2004-10-26 Paolo Carlini + + * include/bits/basic_string.h (append(const basic_string&), + append(size_type, _CharT)): Move out of line... + * include/bits/basic_string.tcc: ... here. + +2004-10-26 Paolo Carlini + + * include/bits/basic_string.h (erase(size_type, size_type), + erase(iterator), erase(iterator, iterator)): Call _M_mutate + instead of _M_replace_safe, equivalent when the fourth argument + is zero and simpler. + +2004-10-26 Benjamin Kosnik + + * include/ext/array_allocator.h (array::allocate): Check for valid + array object, use its size member function directly. + * testsuite/ext/array_allocator/3.cc: New. + * docs/html/20_util/allocator.html: Add docs. + +2004-10-25 Geoffrey Keating + + * configure.host (darwin*): Build libstdc++ single module + and flat namespace. + * libsupc++/new_op.cc (new): Make weak. + * libsupc++/new_opnt.cc (new): Make weak. + * libsupc++/new_opv.cc (new): Make weak. + * libsupc++/new_opvnt.cc (new): Make weak. + * libsupc++/delete_op.cc (delete): Make weak. + * libsupc++/delete_opnt.cc (delete): Make weak. + * libsupc++/delete_opv.cc (delete): Make weak. + * libsupc++/delete_opvnt.cc (delete): Make weak. + +2004-10-25 Benjamin Kosnik + + * testsuite/Makefile.am (GLIBCXX_INCLUDES): Add. + (AUTOMAKE_OPTIONS): Add nostdinc. + * testsuite/Makefile.in: Regenerate. + * scripts/testsuite_flags.in (build-includes): Remove redundant + search for libsupc++. + * fragment.am: Clean. + +2004-10-25 Benjamin Kosnik + + * include/Makefile.am (tr1_headers): Add tuple. + * include/Makefile.in: Regenerate. + +2004-10-25 Chris Jefferson + + * include/tr1/tuple: Implementation of tuple from library TR. + * testsuite/tr1/6_containers/tuple/tuple_element.cc: New. + * testsuite/tr1/6_containers/tuple/tuple_size.cc: New. + * testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc: + New. + * testsuite/tr1/6_containers/tuple/cons/assignment.cc: New. + * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: New. + * testsuite/tr1/6_containers/tuple/cons/constructor.cc: New. + * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc: + New. + * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: New. + * testsuite/tr1/6_containers/tuple/element_access/get.cc: New. + +2004-10-25 Paolo Carlini + + * include/bits/basic_string.h (_Rep::_M_is_safe): Move to + basic_string as _M_disjunct, adjust to take only __s. + * include/bits/basic_string.tcc: Adjust consistently callers. + +2004-10-25 Paolo Carlini + + * include/bits/basic_string.tcc (assign(const _CharT*, size_type)): + Adjust bit missing from the previous commit. + +2004-10-25 Eric Botcazou + + PR other/18138 + * testsuite/lib/libstdc++.exp: Accept more than one multilib libgcc. + +2004-10-25 Paolo Carlini + + * include/bits/basic_string.h (_Rep::_M_is_safe, _M_check_length, + _M_move, _M_copy, _M_assign): New, use througout. + (operator+=(_CharT)): Define in terms of push_back. + (append(const basic_string&)): Define here, inline, and simplify, + don't use the full _M_replace_safe. + (append(size_type, _CharT)): Likewise, don't use _M_replace_aux. + (push_back): Likewise. + (assign(const basic_string&)): Define here, inline. + * include/bits/basic_string.tcc (append(const _CharT* s, size_type): + Fix: when s points inside the _Rep, upon reallocation (reserve) we + were copying from deallocated memory. + (append(const basic_string&, size_type, size_type)): Simplify, + don't use _M_replace_safe. + (replace(size_type, size_type, const _CharT*, size_type)): Slightly + tweak. + (reserve): Likewise. + * testsuite/21_strings/basic_string/append/char/2.cc: New. + * testsuite/21_strings/basic_string/append/char/3.cc: Likewise. + * testsuite/21_strings/basic_string/append/wchar_t/2.cc: Likewise. + * testsuite/21_strings/basic_string/append/wchar_t/3.cc: Likewise. + + * testsuite/21_strings/basic_string/assign/char/3.cc: Remove junk. + * testsuite/21_strings/basic_string/assign/wchar_t/3.cc: Likewise. + +2004-10-23 Andrew Pinski + + * testsuite/ext/mt_allocator/deallocate_global-2.c: + s/value_t/value_type/. s/traits_t/traits_type/. + s/policy_t/policy_type/. s/allocator_t/allocator_type/. + s/string_t/string_type/. s/list_t/list_type/. + * testsuite/ext/mt_allocator/deallocate_global-4.cc: Likewise. + * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Likewise. + * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Likewise. + * testsuite/ext/mt_allocator/deallocate_local-2.cc: Likewise. + * testsuite/ext/mt_allocator/deallocate_local-4.cc: Likewise. + * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Likewise. + * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Likewise. + +2004-10-21 Benjamin Kosnik + + * include/tr1/array (array): Make safe for zero-sized arrays. + (array::end): Return one past the end. + (array::at): Use __throw_out_of_range, include functexcept.h. + (operator==): Implement. + (operator!=): Same. + (operator<): Same. + (operator>): Same. + (operator>=): Same. + (operator<=): Same. + * testsuite/tr1/6_containers/array/capacity/(empty.cc, + max_size.cc, size.cc): New. + * testsuite/tr1/6_containers/array/comparison_operators/(equal.cc, + greater.cc, greater_or_equal.cc, less.cc, less_or_equal.cc, + not_equal): New. + * testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc: + New. + * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc: + New. + * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc: New. + * testsuite/tr1/6_containers/array/requirements/(contiguous.cc, + instantiate, typedefs, zero_size_arrays): New. + +2004-10-21 Paolo Carlini + Benjamin Kosnik + + * include/bits/basic_string.h (_M_set_length_and_sharable): New. + * include/bits/basic_string.tcc (_S_construct, assign(const _CharT*, + size_type), _M_mutate, _M_clone): Use it. + (_Rep::_S_create): Don't set/call _M_length/_M_set_sharable here. + +2004-10-21 Paolo Carlini + Dhruv Matani + Nathan Myers + + * include/bits/vector.tcc (_M_insert_aux, _M_fill_insert, + _M_range_insert): Check at the outset that we are not trying + to exceed max_size, then deal properly with __len overflows. + * testsuite/23_containers/vector/modifiers/insert/1.cc: New. + + * testsuite/testsuite_allocator.h: Remove redundant include. + +2004-10-20 Paolo Carlini + + * include/ext/bitmap_allocator.h (allocate): Throw std::bad_alloc + when n > max_size(). + * include/ext/malloc_allocator.h (allocate): Likewise. + * include/ext/mt_allocator.h (allocate): Likewise. + * include/ext/new_allocator.h (allocate): Likewise. + * include/ext/array_allocator.h: Use __throw_bad_alloc(). + * include/ext/pool_allocator.h: Use __builtin_expect. + * testsuite/ext/array_allocator/check_allocate_max_size.cc: New. + * testsuite/ext/bitmap_allocator/check_allocate_max_size.cc: Likewise. + * testsuite/ext/malloc_allocator/check_allocate_max_size.cc: Likewise. + * testsuite/ext/mt_allocator/check_allocate_max_size.cc: Likewise. + * testsuite/ext/new_allocator/check_allocate_max_size.cc: Likewise. + * testsuite/ext/pool_allocator/check_allocate_max_size.cc: Likewise. + * testsuite/testsuite_allocator.h (check_allocate_max_size): New test. + +2004-10-19 Paolo Carlini + + * testsuite/performance/20_util/allocator/list_sort_search.cc: + Include . + * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. + +2004-10-18 Paolo Carlini + + * include/bits/basic_string.tcc (_M_mutate): Do not reallocate + unnecessarily when _M_rep() == &_S_empty_rep() and __new_size + == capacity() (== 0): is ok to just leave everything unchanged. + + * include/bits/basic_string.h: Minor formatting fixes. + * include/bits/basic_string.tcc: Likewise. + +2004-10-17 Benjamin Kosnik + + * include/ext/mt_allocator.h (__pool::_M_get_align): New. + (__mt_alloc::allocate): Use it. + * src/mt_allocator.cc (__pool::_M_reclaim_block): Use it. + (__pool::_M_reserve_block): Simplify block allocation. + +2004-10-17 Dhruv Matani + Paolo Carlini + + * include/ext/bitmap_allocator.h: Change unsigned int -> size_t: this + makes the code 64-bit correct and also fixes (together with using at + the beginning a bitmap 2 * size_t bytes wide) alignment issues: now + 8 is guaranteed, easily tunable to 16 via _BALLOC_ALIGN_BYTES. + Fix pthread-rope7.cc fail by nulling out __mini_vector<> destructor. + * src/bitmap_allocator.cc: Change to size_t. + * config/linker-map.gnu: Adjust. + +2004-10-16 Benjamin Kosnik + + * include/tr1/array: Don't use layout_type. + +2004-10-16 Sashan Govender + + * include/tr1/array (array::end const): Fix casting from iterator + to const_iterator. + +2004-10-15 Paolo Carlini + + * include/ext/bitmap_allocator.h: Qualify ::operator delete. + * src/bitmap_allocator.cc: Likewise. + * src/mt_allocator.cc: Use ::operator delete, not delete, + consistently with ::operator new. + + * include/ext/bitmap_allocator.h (deallocate): Check for null + pointer. + * testsuite/ext/bitmap_allocator/check_deallocate_null.cc: New. + * testsuite/testsuite_allocator.h (check_deallocate_null): Add test. + +2004-10-14 Benjamin Kosnik + + * include/ext/mt_allocator.h (__mt_alloc::deallocate): Check for + null pointer. + * include/ext/pool_allocator.h (debug_allocator::deallocate): + Check pointer value. + * include/ext/debug_allocator.h (debug_allocator::deallocate): + Throw exceptions, don't abort. + * include/ext/array_allocator.h + (array_allocator_base::deallocate): Remove unused parameters. + * testsuite/testsuite_allocator.h (check_deallocate_null): New. + * testsuite/ext/mt_allocator/check_deallocate_null.cc: New. + * testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: New. + * testsuite/ext/array_allocator/check_deallocate_null.cc: New. + * testsuite/ext/debug_allocator/check_deallocate_null.cc: New. + * testsuite/ext/malloc_allocator/check_deallocate_null.cc: New. + * testsuite/ext/new_allocator/check_deallocate_null.cc: New. + * testsuite/ext/pool_allocator/check_deallocate_null.cc: New. + + * testsuite/testsuite_allocator.h (check_new): Add instance argument. + * testsuite/ext/array_allocator/check_new.cc: New. + +2004-10-14 Paolo Carlini + + * include/ext/bitmap_allocator.h (bitmap_allocator::_Alloc_block): + Rename __unused to __M_unused. + +2004-10-14 Benjamin Kosnik + + * testsuite/ext/headers.cc: Add includes, compile only. + * testsuite/ext/hash_map.cc: Move to... + * testsuite/ext/hash_map/1.cc: ...here. + * testsuite/ext/14648.cc: Move to... + * testsuite/ext/hash_map/14648.cc: ...here. + * testsuite/ext/hash_map/instantiate.cc: Add. + * testsuite/ext/hash_set.cc: Move to... + * testsuite/ext/hash_set/1.cc: ...here. + * testsuite/ext/hash_set_explicit_instantiation.cc: Move to... + * testsuite/ext/hash_set/instantiate.cc: ...here. + * testsuite/ext/hash_check_construct_destroy.cc: Move to... + * testsuite/ext/hash_set/check_construct_destroy.cc: ...here. + * testsuite/ext/slist_check_construct_destroy.cc: Move to... + * testsuite/ext/slist/check_construct_destroy.cc: ...here. + * testsuite/ext/slist_explicit_instantiation.cc: Move to... + * testsuite/ext/slist/instantiate.cc: ...here. + +2004-10-14 Benjamin Kosnik + + * include/ext/mt_allocator.h: Tweaks. + * src/mt_allocator.cc: Same. + +2004-10-14 Dhruv Matani + + * ext/bitmap_allocator.h: Clean-up add/remove functions. + * src/bitmap_allocator.cc: New file. Contains the out-of-line + function definitions, static initialization of variables, and + explicit instantiations needed for the allocator. + * src/Makefile.am: Add. + * src/Makefile.in: Regenerate. + * config/linker.map.gnu: Add the necessary symbols. + +2004-10-13 Paolo Carlini + + * include/bits/basic_string.tcc (_S_create): Use consistently + the exponential policy, simplify. + * testsuite/performance/21_strings/string_append_2.cc: New. + + * include/ext/array_allocator.h (allocate): Fix bad_alloc check. + * testsuite/ext/array_allocator/2.cc: Fix wrt 64-bit archs (in + that case sizeof(_Rep) == 24). + +2004-10-12 Paolo Carlini + + PR libstdc++/17948 + * include/bits/stl_tree.h (erase(iterator, iterator)): Revert + wrong commit of 2004-10-07. + +2004-10-12 Scott Snyder + + PR libstdc++/17948 + * testsuite/23_containers/set/modifiers/17948.cc: New. + +2004-10-11 Benjamin Kosnik + + * include/bits/stl_deque.h: Correct for over-long lines. + +2004-10-11 Benjamin Kosnik + + PR libstdc++/17937 + * include/ext/mt_allocator.h (__pool::_M_destroy): New. + * src/mt_allocator.cc (__pool::~__pool): Change definitions to + _M_destroy. + * acconfig.h: Remove _GLIBCXX_USE___CXA_ATEXIT. + * acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): Remove. + * configure.ac: Remove call to GLIBCXX_ENABLE_CXA_EXIT. + * configure: Regenerate. + * config/linker-map.gnu: Tweak exports. + * docs/html/ext/mt_allocator.html: Update docs. + * testsuite/ext/mt_allocator/deallocate_global-2.cc: Fix. + * testsuite/ext/mt_allocator/deallocate_global-4.cc: Fix. + * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Fix. + * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Fix. + * testsuite/ext/mt_allocator/deallocate_local-2.cc: Fix. + * testsuite/ext/mt_allocator/deallocate_local-4.cc: Fix. + * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Fix. + * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Fix. + +2004-10-11 Benjamin Kosnik + + PR libstdc++/16614 continued. + * include/ext/mt_allocator.h + (__per_type_pool_policy::_S_get_pool): Use saner defaults based on + specific type characteristics. + (__pool_base): Add constructor that takes a _Tune argument. + (__pool): Same. + * testsuite/ext/mt_allocator/tune-2.cc: Adjust default. + * testsuite/ext/mt_allocator/tune-4.cc: Same. + * testsuite/ext/mt_allocator/tune-3.cc: Same. + +2004-10-11 Joachim Kuebart + Paolo Carlini + + * src/pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk): + Deal properly with exceptions thrown by ::operator new(size_t). + * testsuite/ext/pool_allocator/allocate_chunk.cc: New. + + * include/ext/pool_allocator.h: Include . + +2004-10-10 Benjamin Kosnik + + * include/bits/functexcept.h: Add guards. + + * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Tweak test. + * configure: Regenerate. + +2004-10-10 Paolo Carlini + + * config/locale/gnu/monetary_members.cc (_S_construct_pattern): + Give __ret a default value, thus avoiding spurious warnings. + + * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Open either + words or linux.words, otherwise exit. + * testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak. + +2004-10-09 Paolo Carlini + + * include/std/std_memory.h (__get_temporary_buffer): Don't use + INT_MAX, prefer numeric_limits::max(), ok on 64-bit + platforms too. + * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust dg-error + line numbers. + +2004-10-08 Benjamin Kosnik + + * acconfig.h: Add _GLIBCXX_USE___CXA_ATEXIT. + * acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): New. + * configure.ac: Call GLIBCXX_ENABLE_CXA_EXIT. + * configure: Regenerate. + * src/mt_allocator.cc (__pool::~__pool): Make conditional on + _GLIBCXX_USE___CXA_ATEXIT macro. + * docs/html/ext/mt_allocator.html: Add note about deallocation. + * testsuite/ext/mt_allocator/deallocate_local-2.cc: Guard checks + with _GLIBCXX_USE___CXA_ATEXIT. + * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same. + * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same. + * testsuite/ext/mt_allocator/deallocate_global-4.cc: Same. + * testsuite/ext/mt_allocator/deallocate_global-2.cc: Same. + * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same. + * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same. + * testsuite/ext/mt_allocator/deallocate_local-4.cc: Same. + +2004-10-07 Phil Edwards + + * testsuite/lib/libstdc++.exp: Update list of undefined functions. + +2004-10-07 Paolo Carlini + + * include/bits/list.tcc (operator=): Avoid iterator postincrement. + * include/bits/stl_tree.h (erase(iterator, iterator)): Likewise. + +2004-10-07 Benjamin Kosnik + + * include/tr1: New. + * include/tr1/array: New. + * include/Makefile.am (tr1_headers): New. + (stamp-tr1): New. + (install-headers): New. + (allstamped): Add stamp-tr1. + + * include/ext/array_allocator.h: New. + * include/Makefile.am: Add. + * include/Makefile.in: Regenerate. + * testsuite/ext/array_allocator/1.cc: New. + * testsuite/ext/array_allocator/2.cc: New. + +2004-10-07 Richard Earnshaw + + * testsuite/lib/libstdc++.exp (libstdc++_exit): New proc. + +2004-10-07 Roger Sayle + + PR libstdc++/17850 + * configure.ac: Newlib does not provide strtold. + * configure: Regenerate. + +2004-10-06 Benjamin Kosnik + + * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread. + (GLIBCXX_CONFIGURE_TESTSUITE): Use it. + * configure: Regenerated. + * testsuite/Makefile.am (CLEANFILES): Add TEST for + check-performance executables. + (stamp_thread): New. + (all-local): Use it. + * testsuite/Makefile.in: Regenerate. + * scripts/create_testsuite_files: Filter thread tests. + + * testsuite/thread/pthread1.cc: Remove macro conditionals: this + file will only be run by thread enabled configurations. + * testsuite/thread/pthread7-rope.cc: Same, add rope_type typedef. + * testsuite/thread/pthread6.cc: Same. + * testsuite/thread/pthread5.cc: Same. + * testsuite/thread/pthread4.cc: Same. + * testsuite/thread/pthread3.cc: Same. + * testsuite/thread/pthread2.cc: Same. + + * testsuite/ext/mt_allocator/instantiate.cc: Add in __GTHREADS guard. + * testsuite/ext/mt_allocator/deallocate_global-1.cc: Move to... + * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: ...here. + * testsuite/ext/mt_allocator/deallocate_global-3.cc: Move to... + * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: ...here. + * testsuite/ext/mt_allocator/deallocate_local-1.cc: Move to... + * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: ...here. + * testsuite/ext/mt_allocator/deallocate_local-3.cc: Move to... + * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: ...here. + +2004-10-06 Benjamin Kosnik + Paolo Carlini + + PR libstdc++/17780 + * src/mt_allocator.cc (__pool::_M_reserve_block): Revert + to old locking order. + +2004-10-06 Paolo Carlini + + * include/std/std_sstream.h (_M_sync): When the caller is + setbuf, don't trust _M_string.capacity() to be the size of + the buffer area, use _M_string.size() in this case. + * testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: New. + * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise. + + * include/bits/sstream.tcc (overflow): Avoid calling string::assign + unnecessarily when the current _M_string is empty. + +2004-10-06 Paolo Carlini + + * include/bits/stl_algo.h (__reverse(bidirectional_iterator_tag)): + Avoid iterator postincrement. + (__rotate): Likewise. + + * include/bits/stl_algo.h: Minor formatting tweaks. + +2004-10-06 Christopher Jefferson + + * include/bits/stl_algo.h (__reverse(random_access_iterator_tag)): + Avoid iterator postincrement; fix swapping middle element with + itself on odd-length inputs. + +2004-10-05 Benjamin Kosnik + + PR libstdc++/17780 + * include/ext/mt_allocator.h (__pool_base::_Tune): Add default + options as compile-time constant enums. + (__pool_base::_Tune::is_default): New. + (__pool_base::_Block_address): New. + (__pool_base): Rearrange data members. + (__pool::_M_reserve_memory): To _M_reserve_block. + (__pool::_M_reclaim_memory): To _M_reclaim_block. + (__pool::_Bin_record): Add _Block_address data member. + (__pool): Add _M_thread_freelist_initial. + (__pool::~__pool): Declare. + (__common_pool_policy): Move static data member to... + (__common_pool_policy::_S_get_pool): ...here, make static local. + (__per_type_pool_policy): Move static data member to... + (__per_type_pool_policy::_S_get_pool): ...here, make static local. + (__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool. + Remove static member definitions. Use define for __default_policy. + * src/mt_allocator.cc: Same. + * config/linker-map.gnu: Don't export _S_get_pool. Renames. + * testsuite/ext/new_allocator: New. + * testsuite/ext/new_allocator/instantiate.cc: New. + * testsuite/ext/new_allocator/check_new.cc: New. + * testsuite/ext/new_allocator/deallocate_global.cc: New. + * testsuite/ext/new_allocator/deallocate_local.cc: New. + * testsuite/ext/mt_allocator/instantiate.cc: Instantiate all + template arguments. + * testsuite/ext/mt_allocator/deallocate_global-1.cc: New. + * testsuite/ext/mt_allocator/deallocate_global-2.cc: New. + * testsuite/ext/mt_allocator/deallocate_global-3.cc: New. + * testsuite/ext/mt_allocator/deallocate_global-4.cc: New. + * testsuite/ext/mt_allocator/deallocate_local-1.cc: New. + * testsuite/ext/mt_allocator/deallocate_local-2.cc: New. + * testsuite/ext/mt_allocator/deallocate_local-3.cc: New. + * testsuite/ext/mt_allocator/deallocate_local-4.cc: New. + * testsuite/ext/mt_allocator/deallocate.cc: New. + * testsuite/ext/malloc_allocator/deallocate.cc: New. + * testsuite/ext/malloc_allocator/deallocate_global.cc: New. + * testsuite/ext/malloc_allocator/deallocate_local.cc: New. + +2004-10-05 Ulrich Weigand + + * configure.host (abi_baseline_pair): Define for s390-*-linux* and + s390x-*-linux*. + * config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols. + * config/abi/s390x-linux-gnu/baseline_symbols.txt: New file. + +2004-10-05 Christopher Jefferson + + * include/bits/stl_algobase.h (iter_swap): delegate to swap via + __iter_swap when iterator's value_types are equal. + (struct __iter_swap): New. + +2004-10-04 Benjamin Kosnik + + * configure.ac (libtool_VERSION): To 6:3:0. + * configure: Regnerate. + * testsuite/testsuite_abi.cc (check_version): Add 3.4.3. + +2004-10-04 Roger Sayle + Eric Botcazou + + PR libstdc++/17505 + * config/linker-map.gnu: Synchronize the current list of stub + functions from libmath. + +2004-10-03 Roger Sayle + + * config/locale/generic/c_locale.cc (__convert_to_v): Use + _GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof. + Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99 + to check for presence of strtold. + +2004-10-03 Paolo Carlini + + * include/bits/stl_list.h: Trivial formatting fixes. + * include/bits/stl_tree.h: Likewise. + +2004-10-03 Paolo Carlini + + * include/bits/sstream.tcc (seekpos): In case of success, just + return __sp. + +2004-10-01 Paolo Carlini + + * include/bits/sstream.tcc (pbackfail): Implement correctly + 27.7.1.3/2, bullet 2: if mode & ios_base::out is false do not + write in the buffer. + * testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: New. + * testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise. + * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise. + * testsuite/27_io/basic_istream/putback/char/1.cc: Tweak consistently. + +2004-10-01 Paolo Carlini + + * include/bits/sstream.tcc (seekpos): Minor rearrangement of two + conditionals consistently with seekoff. + * include/std/std_sstream.h (setbuf): Avoid a string temporary. + (_M_sync): Simplify a bit, clean-up comment. + +2004-09-30 Paolo Carlini + + PR libstdc++/10975 (DR 453) + * include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0 + and __off == 0. + * docs/html/ext/howto.html: Add an entry for DR 453. + * testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New. + * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise. + * testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently. + * testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise. + * testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise. + * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and + move to... + * testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here. + * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and + move to... + * testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here. + +2004-09-29 Paolo Carlini + + * include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)): + Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1. + (str()): Slightly tweak, protect from pptr() == 0. + (_M_update_egptr()): Likewise. + * include/bits/sstream.tcc (ssekoff, seekpos): In order to check + for an empty buffer use __beg instead of _M_string.capacity(). + * testsuite/27_io/basic_stringbuf/cons/char/1.cc: New. + * testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise. + + * testsuite/27_io/basic_filebuf/cons/char/1.cc: New. + * testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_streambuf/cons/char/1.cc: Update. + * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise. + +2004-09-29 Paolo Carlini + Benjamin Kosnik + + * testsuite/testsuite_io.h (class constraint_buf): New, extended + and templatized version of constraint_filebuf; add typedefs for + streambuf/stringbuf/filebuf and wchar_t counterparts. + +2004-09-28 Paolo Carlini + + PR libstdc++/16612 + * include/bits/basic_string.h (_M_dispose, _M_refcopy, + basic_string()): When _GLIBCXX_FULLY_DYNAMIC_STRING is defined, + don't deal with _S_empty_rep. + * include/bits/basic_string.tcc (_S_construct, _M_destroy, + _M_leak_hard, _M_mutate): Likewise. + * acinclude.m4 (GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING): New. + * acconfig.h: Add corresponding undef. + * configure.ac: Use GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING. + * docs/html/configopts.html: Document --enable-fully-dynamic-string. + * configure: Regenerate. + * config.h.in: Likewise. + +2004-09-28 Benjamin Kosnik + Paolo Carlini + + * testsuite/21_strings/basic_string/operations/char/1.cc: New. + * testsuite/21_strings/basic_string/operations/wchar_t/1.cc: New. + * testsuite/21_strings/basic_string/element_access/char/empty.cc: New. + * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc: + New. + +2004-09-28 Paolo Carlini + + * README: Remove obsolete entry about include/c_shadow. + +2004-09-24 H.J. Lu + + PR libstdc++/17469 + * testsuite/lib/libstdc++.exp: Don't use global ld_library_path. + +2004-09-24 Paolo Carlini + + * src/localename.cc (locale::locale(const char*)): Minor tweaks: + rename a variable, move an assignment. + (locale::_Impl::_Impl(const char*, size_t)): Likewise, minor tweak. + +2004-09-24 Paul Brook + + * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL more arm + simulator targets. + * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto. + * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Ditto. + * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Ditto. + * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Ditto. + * testsuite/ext/stdio_filebuf/char/10063-2.cc: Ditto. + * testsuite/ext/stdio_filebuf/char/10063-3.cc: Ditto. + +2004-09-23 Zack Weinberg + + * testsuite/20_util/memory/auto_ptr/assign_neg.cc + * testsuite/23_containers/map/operators/1_neg.cc + * testsuite/23_containers/set/operators/1_neg.cc: + Update locations and/or regexps of dg-error markers. + +2004-09-23 P.J. Darcy + + * include/Makefile.am (thread_host_headers): Add gthr-tpf.h. + Add rule to build ${host_builddir}/gthr-tpf.h. + * include/Makefile.in: Regenerate. + +2004-09-23 Paolo Carlini + Magnus Fromreide + + * include/bits/boost_concept_check.h (struct _SequenceConcept): + Remove wrong requirement, i.e., not present in Table 67. + +2004-09-21 Paolo Carlini + + PR libstdc++/12882 (cont) + * acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too. + * configure: Regenerate. + * config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When + _GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non + trivial showmanyc for large files too. + +2004-09-17 Jonathan Wakely + + * include/bits/stl_algo.h (remove): Remove too restrictive + concept-check. + +2004-09-17 Paolo Carlini + + * include/bits/fstream.tcc (xsgetn): Slightly tweak conditional, + as per Nathan's original suggestion. + +2004-09-17 Paolo Carlini + + * testsuite/ext/mt_allocator/tune-1.cc: Use VERIFY, clean + up a bit. + * testsuite/ext/mt_allocator/tune-2.cc: Likewise. + * testsuite/ext/mt_allocator/tune-3.cc: Likewise. + * testsuite/ext/mt_allocator/tune-4.cc: Likewise. + +2004-09-17 Paolo Carlini + Andrea Arcangeli + + * config/io/basic_file_stdio.cc (__basic_file<>::close)): Don't + call unnecessarily sync, that is fflush: the library, since 3.4.0 + does not use buffered fread/fwrite. + * include/bits/fstream.tcc (basic_filebuf<>::overflow): Likewise. + +2004-09-15 Mark Mitchell + + * config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type): + Define. + * config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type): + Define. + * libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type. + (__cxa_vec_new): Use it. + (__cxa_vec_new2): Likewise. + (__cxa_vec_new3): Likewise. + (__cxa_vec_cdtor): Likewise. + (__cxa_vec_cctor): Likeiwse. + (__cxa_vec_dtor): Likewise. + (__cxa_vec_cleanup): Likewise. + (__cxa_vec_delete2): Likewise. + (__cxa_vec_delete3): Likewise. + * libsupc++/vec.cc (__cxa_vec_new): Likewise. + (__cxa_vec_new2): Likewise. + (__cxa_vec_new3): Likewise. + (__cxa_vec_cdtor): Likewise. + (__cxa_vec_cctor): Likeiwse. + (__cxa_vec_dtor): Likewise. + (__cxa_vec_cleanup): Likewise. + (__cxa_vec_delete2): Likewise. + (__cxa_vec_delete3): Likewise. + (__aeabi_vec_ctor_nocookie_nodtor): New function. + (__aeabi_vec_ctor_cookie_nodtor): Likewise. + (__aeabi_vec_cctor_nocookie_nodtor): Likewise. + (__aeabi_vec_new_cookie_noctor): Likewise. + (__aeabi_vec_new_nocookie): Likewise. + (__aeabi_vec_new_cookie_nodtor): Likewise. + (__aeabi_vec_new_cookie): Likewise. + (__aeabi_vec_dtor): Likewise. + (__aeabi_vec_dtor_cookie): Likewise. + (__aeabi_vec_delete): Likewise. + (__aeabi_vec_delete3): Likewise. + (__aeabi_vec_delete3_nodtor): Likewise. + (__aeabi_atexit): Likewise. + +2004-09-14 Nathan Myers + + * include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix + for 11722: copy can replace move; the common case is __avail == 0. + +2004-09-14 Paolo Carlini + + * include/bits/cpp_type_traits.h: Rename __is_trivially_copyable + to __is_scalar, more clear and consistent with "tr1" naming. + * include/bits/stl_algobase.h: Update consistently throughout. + +2004-09-13 Paolo Carlini + + PR libstdc++/11722 + * include/std/std_fstream.h (xsgetn): Declare only. + * include/bits/fstream.tcc (xsgetn): Define, optimize for the + always_noconv() case: when __n > __buflen, copy the available + buffer and issue a direct read. + * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New. + + * include/bits/fstream.tcc (xsputn): Minor tweak, reorder a + conditional. + +2004-09-13 Hans-Peter Nilsson + + * testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call + libstdc++_maybe_build_wrapper instead of using local code. + +2004-09-08 Benjamin Kosnik + + * config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports. + +2004-09-03 Jan Beulich + + * crossconfig.m4: Add NetWare as a target. + * configure: Regenerate. + +2004-09-02 Mark Mitchell + + * libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already + defined. + +2004-09-02 Benjamin Kosnik + Simon Richter + + PR libstdc++/16715 + * include/bits/istream.tcc: Add extern template for iostream + char and wchar_t instantiations. + +2004-09-02 Benjamin Kosnik + Leland Wang + + PR libstdc++/17259 + * include/ext/ropeimpl.h (rope::_S_compare): Use + _Rope_constants::_S_leaf. + +2004-09-02 Benjamin Kosnik + + PR libstdc++/16848 + * include/Makefile.am (ext_headers): Remove demangle.h. + * include/Makefile.in: Regenerate. + * include/ext/demangle.h: Remove. + +2004-09-01 Benjamin Kosnik + + PR libstdc++/16614 + * include/ext/mt_allocator.h (__mt_base): Not type dependent, + split into.. + (__pool): New, specialize. + (__common_pool): New, static bits here. + (__per_type_pool): New, and here. + (__mt_alloc_base): New. + (__mt_alloc): Add template parameter, inherit from it. + * src/allocator.cc: Split this... + * src/allocator-inst.cc: And this... + * src/pool_allocator.cc: ...into this. + * src/mt_allocator.cc: ... and this. Add definitions for + __mt_base. + * src/Makefile.am (sources): Split allocator.cc to + pool_allocator.cc and mt_allocator.cc. + * src/Makefile.in: Regenerate. + * config/linker-map.gnu: Add symbols. + * docs/html/ext/mt_allocator.html: Document new design. + * testsuite/ext/mt_allocator/tune-1.cc: New. + * testsuite/ext/mt_allocator/tune-2.cc: New. + * testsuite/ext/mt_allocator/tune-3.cc: New. + * testsuite/ext/mt_allocator/tune-4.cc: New. + + * testsuite/testsuite_allocator.h (__gnu_test::check_new): New. + * testsuite/ext/allocators.cc: Use check_new, split into... + * testsuite/ext/mt_allocator/check_new.cc: this. + * testsuite/ext/pool_allocator/check_new.cc: this. + * testsuite/ext/malloc_allocator/check_new.cc: this. + * testsuite/ext/debug_allocator/check_new.cc: this. + * testsuite/ext/mt_allocator/instantiate.cc: this. + * testsuite/ext/pool_allocator/instantiate.cc: this. + * testsuite/ext/malloc_allocator/instantiate.cc: this. + * testsuite/ext/debug_allocator/instantiate.cc: this. + +2004-08-30 Phil Edwards + + * docs/html/install.html: Update locales list (from Paolo). + Remove other redundant information and point to the GCC install + documentation. + +2004-08-30 Benjamin Kosnik + + * include/ext/pool_allocator.h: Rename __pool_base to + __pool_alloc_base. + * src/allocator.cc: Same. + * config/linker-map.gnu: Same. + +2004-08-30 Paolo Carlini + Kenneth C. Schalk + + PR libstdc++/17215 + * config/io/basic_file_stdio.cc (__basic_file::close()): + Check the return value of fclose/sync, loop on EINTR. + (__basic_file::sys_open): Likewise, for sync. + +2004-08-29 Paolo Carlini + + * include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format, + case 'S'): Allow for at least one leap-second (as per C99, 7.23.1 + and 7.23.3.5), two if !_GLIBCXX_USE_C99. + * testsuite/22_locale/time_get/get_time/char/4.cc: New. + * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise. + +2004-08-27 Jason Merrill + + PR c++/13684 + * libsupc++/guard.cc (static_mutex): Internal class implementing a + recursive mutex which controls initialization of local statics. + (__gnu_cxx::recursive_init): New exception class. + (__cxa_guard_acquire): Deal with locking and recursion detection. + (acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise. + +2004-08-27 Matthias Klose + + * configure.host: For mips*-*-linux* update cpu_include_dir + after atomicity_dir is set. + +2004-08-27 Matthias Klose + + * config/abi/arm-linux-gnu/baseline_symbols.txt: New. + * config/abi/mips-linux-gnu/baseline_symbols.txt: Update to 3.4.0. + * configure.host: Set abi_baseline_pair for arm*-*-linux* and + mips*-*-linux*. + +2004-08-27 Paolo Carlini + + * testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: New. + * testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise. + * testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise. + * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise. + * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise. + + * testsuite/27_io/manipulators/adjustfield/char/1.cc: Minor + formatting fixes. + * testsuite/27_io/manipulators/adjustfield/char/2.cc: Likewise. + * testsuite/27_io/manipulators/basefield/char/1.cc: Likewise. + * testsuite/27_io/manipulators/standard/char/1.cc: Likewise. + * testsuite/27_io/manipulators/standard/char/2.cc: Likewise. + +2004-08-25 Paolo Carlini + + PR libstdc++/17038 (partial) + * include/bits/locale_facets.tcc (time_put<>::do_put): Increase + __maxlen to 128. + * include/bits/locale_facets.h (class __timepunct): Add FIXME + comment about _M_put. + * config/locale/generic/time_members.cc (_M_put): Always null + terminate __s. + * config/locale/gnu/time_members.cc (_M_put): Likewise. + * testsuite/22_locale/time_put/put/char/17038.cc: New. + * testsuite/22_locale/time_put/put/wchar_t/17038.cc: New. + +2004-08-24 Paolo Carlini + + * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: New. + * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise. + * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise. + * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise. + + * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Trim excess + newlines. + * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise. + +2004-08-22 Matthias Klose + + * config/abi/m68k-linux-gnu/baseline_symbols.txt: New. + * config/abi/sparc-linux-gnu/baseline_symbols.txt: Update to 3.4.0. + +2004-08-23 Paolo Carlini + + * configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE. + * aclocal.m4: Regenerate with automake-1.9.1. + * 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. + +2004-08-22 Paolo Carlini + + * include/bits/locale_facets.tcc (num_put<>::do_put(bool)): Cast + to a signed type, long according to the resolution of DR 359. + * testsuite/22_locale/num_put/put/char/9.cc: New. + * testsuite/22_locale/num_put/put/wchar_t/9.cc: New. + + * include/bits/locale_facets.tcc (num_put<>::do_put(const void*)): + Simplify a bit: no need to clear showpos. + +2004-08-21 Paolo Carlini + + * include/bits/char_traits.h (struct _Char_traits_match): Remove, + unused. + +2004-08-21 Paolo Carlini + + * testsuite/22_locale/money_put/put/wchar_t/1.cc: Use proper + wchar_t type for the fill argument; minor formatting tweaks. + * testsuite/22_locale/money_put/put/wchar_t/12971.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/4.cc: Likewise. + * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise. + * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise. + +2004-08-21 Paolo Carlini + + * include/bits/basic_ios.tcc (basic_ios<>::copyfmt): Don't deal + with _M_word != _M_local_word two times, redundantly. + +2004-08-20 Jason Merrill + + * include/Makefile.am (${host_builddir}/gthr.h): Don't add + _GLIBCXX_ to #pragma lines. + * include/Makefile.in: Update. + +2004-08-20 Paolo Carlini + + PR libstdc++/7219 (continued) + * include/bits/ios_base.h (class ios_base): Expose Annex D.6 + typedefs by default. + * testsuite/27_io/types/1.cc: Remove #if _GLIBCXX_DEPRECATED. + * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak dg-error + line number. + * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise. + +2004-08-20 John David Anglin + + * cpu/hppa/atomicity.h (__exchange_and_add, __atomic_add): Add memory + barrier to locking asm. + +2004-08-20 Paolo Carlini + + * include/c_std/cmath.tcc (__cmath_power): Revert previous commit: + actually the warning is a front-end bug (c++/17120). + +2004-08-20 Matthias Klose + + * config/abi/s390-linux-gnu/baseline_symbols.txt: New. + +2004-08-20 Paolo Carlini + + * include/c_std/cmath.tcc (__cmath_power): Suppress assignment + used as truth value warning. + +2004-08-20 Paolo Carlini + + * config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Add 32 bit + baseline. + +2004-08-20 Paolo Carlini + + * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Fix it. + +2004-08-19 Benjamin Kosnik + + * testsuite/22_locale/time_put/put/char/3.cc (test03): Don't check + timezone. + * testsuite/22_locale/time_put/put/wchar_t/3.cc (test03): Same. + +2004-08-19 Paolo Carlini + + * testsuite/performance/20_util/allocator/insert.cc: For std::map + instantiate the allocator for a correct pair type. + * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise. + * testsuite/performance/20_util/allocator/map_thread.cc: Likewise. + * testsuite/performance/20_util/allocator/producer_consumer.cc: + Likewise. + + * testsuite/performance/20_util/allocator/list_sort_search.cc: Very + minor formatting fixes. + * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. + +2004-08-19 Paolo Carlini + + * testsuite/22_locale/time_put/put/char/1.cc: Add VERIFY on the + results. + * 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/wchar_t/1.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. + +2004-08-19 Paolo Carlini + + * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update to 3.4.0. + +2004-08-18 Matthias Klose + + * config/abi/hppa-linux-gnu/baseline_symbols.txt: Update to 3.4.0. + * config/abi/i386-linux-gnu/baseline_symbols.txt: New. + * config/abi/powerpc-linux-gnu/baseline_symbols.txt: New. + +2004-08-17 Paolo Carlini + + * config/abi/alpha-linux-gnu/baseline_symbols.txt: Update to 3.4.0. + +2004-08-17 Paolo Carlini + + * config/abi/ia64-linux-gnu/baseline_symbols.txt: Update to 3.4.0. + +2004-08-17 Benjamin Kosnik + + * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.4.0. + +2004-08-16 Paolo Carlini + + * include/bits/indirect_array.h: Trivial formatting fixes. + * include/bits/valarray_after.h: Likewise. + * include/bits/valarray_array.h: Likewise. + * src/valarray-inst.cc: Likewise. + +2004-08-15 Paolo Carlini + + * testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Remove junk. + * testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise. + * testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise. + + * testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: New. + * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise. + * testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise. + * testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise. + +2004-08-15 Paolo Carlini + + * include/bits/deque.tcc: Trivial formatting fixes. + +2004-08-15 Paolo Carlini + + * include/bits/deque.tcc: Trivial formatting fixes. + + * include/bits/locale_facets.tcc (num_get<>::do_get(&bool)): + Remove unneded typedef. + + * include/bits/locale_facets.tcc: Very minor tweaks. + + * testsuite/22_locale/time_put/put/wchar_t/1.cc: Use proper + type for the fill argument. + * testsuite/22_locale/time_put/put/wchar_t/10.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/5.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. + +2004-08-13 Paolo Carlini + + * src/debug.cc (_Error_formatter::_M_print_string): Fix thinko, + memmove is not needed, memcpy suffices. + +2004-08-13 Paolo Carlini + + * include/std/std_fstream.h (class basic_ifstream, + class basic_ofstream, class basic_fstream): Add const overloads + of is_open, as per DR 365 [WP]. + * docs/html/ext/howto.html: Add an entry for DR 365. + +2004-08-12 Paolo Carlini + + * configure.ac: Specify version 1.8.5 in AM_INIT_AUTOMAKE. + +2004-08-12 Paolo Carlini + + PR libstdc++/16956 + * include/bits/sstream.tcc (basic_stringbuf<>::seekoff): Add __off + to the returned value, reorganize a bit. + * testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: New. + * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: New. + + * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Remove junk. + * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise. + +2004-08-12 Paul Brook + + * config/cpu/arm/cxxabi_tweaks.h: Define __cxa_vec_ctor_return and + _GLIBCXX_CXA_VEC_CTOR_RETURN. + * config/cpu/generic/cxxabi_tweaks.h: Ditto. + * libsupc++/cxxabi.h (__cxa_vec_ctor, __cxa_vec_cctor): Use + __cxa_vec_ctor_return. + * libsupc++/vec.cc (__cxa_vec_ctor, __cxa_vec_cctor): Ditto. + Use _GLIBCXX_CXA_VEC_CTOR_RETURN. + +2004-08-12 Kelley Cook + + * Makefile.in, aclocal.m4, configure, include/Makefile.in, + libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in, + src/Makefile.in, testsuite/Makefile.in: Regenerate + +2004-08-12 Jan Beulich + + * config/locale/generic/ctype_members.cc + (ctype::_M_convert_to_wmask): Default case must not use 0 as + initializer for return value, as that is invalid for enumerated types. + * config/locale/gnu/ctype_members.cc + (ctype::_M_convert_to_wmask): Likewise. + +2004-08-11 Paolo Carlini + + * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Fix typo. + +2004-08-11 Paolo Carlini + + * testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Declare test + variable. + * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Remove junk. + * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Ditto. + * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Ditto. + +2004-08-11 Paolo Carlini + Petur Runolfsson + + PR libstdc++/16959 + * src/ios_init.cc (ios_base::sync_with_stdio): Make sure the + standard streams are constructed. + * testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New. + +2004-08-09 Paolo Carlini + + * include/bits/stl_bvector.h: Trivial formatting fixes. + +2004-08-09 Paolo Carlini + + * src/ios.cc (ios_base::_M_grow_words): Uglify the names. + +2004-08-07 Jonathan Wakely + Paolo Carlini + + * src/debug.cc (_Error_formatter::_M_print_string): In order + to print individual words from __string, _M_format_word can't + be called since may be just sprintf, thus ignoring completely + __n: instead, use memmove and append '\0' by hand. + +2004-08-07 Paolo Carlini + + * config/locale/generic/c_locale.h (__convert_from_v): Don't + use a default for __prec, assume __prec >= 0 and simplify. + * config/locale/gnu/c_locale.h (__convert_from_v): Likewise. + * include/bits/locale_facets.tcc (money_put<>::do_put(long double)): + Pass format "%.*Lf" + precision == 0, equivalent to "%.0Lf". + +2004-08-04 Phil Edwards + + * docs/html/configopts.html: Emphasize that options change. + * docs/html/17_intro/configury.html: Update links. + +2004-08-03 Paolo Carlini + + * include/bits/list.tcc: Trivial formatting fixes. + +2004-08-03 Mark Mitchell + + * libsupc++/new_op.cc: Update comments. + * libsupc++/del_op.cc: Likewise. + +2004-08-02 Mark Mitchell + + * libsupc++/cxxabi.h: Make all declarations have default + visibility. + * libsupc++/exception: Likewise. + * libsupc++/new: Likewise. + * libsupc++/typeinfo: Likewise. + * libsupc++/unwind-cxx.h: Likewise. + * libsupc++/eh_alloc.cc (__cxa_allocate_exception): Put it into + the __cxxabiv1 namespace. + (__cxa_free_exception): Likewise. + * libsupc++/eh_aux_runtime.cc (__cxa_bad_cast): Likewise. + (__cxa_bad_typeid): Likewise. + * libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise. + (__cxa_end_catch): Likewise. + * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Likewise. + (__cxa_get_globals): Likewise. + * libsupc++/eh_throw.cc (__cxa_throw): Likewise. + (__cxa_rethrow): Likewise. + * libsupc++/pure.cc (__cxa_pure_virtual): Likewise. + * libsupc++/eh_type.cc: Include . + + * Makefile.am (hosted_source): Add libmath and testsuite. + (SUBDIRS): Remove them. + * acinclude.m4: (GLIBCXX_ENABLED_HOSTED): Default to freestanding + on arm*-*-symbianelf*. + * crossconfig.m4: Add arm*-*-symbianelf* support. + * include/c_std/std/std_cstdlib.h (stdlib.h): Do not include it + when freestanding. Do not bring names into std:: namespace with + "using" when freestanding. Declare required functions and macros + when freestanding. + * libsupc++/Makefile.am (c_sources): Do not include cp-demangle.c + when freestanding. + * libsupc++/del_op.cc: Declare "free" only when freestanding. + * libsupc++/eh_alloc.cc (cstring): Include it only when hosted. + (malloc): Declare when freestanding. + (free): Likewise. + (memset): Likewise. + (__cxa_allocate_exception): Call malloc, not std::malloc. Likewise + for memset. + (__cxa_free_exception): Likewise for free. + * libsupc++/new_op.cc: Declare "malloc" when freestanding. + * libsupc++/pure.cc (writestr): Define to nothing when + freestanding. + * libsupc++/vterminate.cc: Do not define anything when + freestanding. + * Makefile.in: Regenerated. + * aclocal.m4: Likewise. + * configure: 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. + +2004-08-01 Matt Austern + + PR libstdc++/16844 + * include/bits/stl_list.h (_M_create_node): Remove unused + zero-argument version. + * include/ext/slist (_M_create_node): Pass two arguments to + allocator's construct() member function. + * testsuite/23_containers/deque/explicit_instantiation.cc: New. + * testsuite/23_containers/list/explicit_instantiation.cc: New. + * testsuite/23_containers/vector/explicit_instantiation.cc: New. + * testsuite/23_containers/map/explicit_instantiation.cc: New. + * testsuite/23_containers/set/explicit_instantiation.cc: New. + * testsuite/23_containers/multimap/explicit_instantiation.cc: New. + * testsuite/23_containers/multiset/explicit_instantiation.cc: New. + * testsuite/ext/hash_set_explicit_instantiation.cc: New. + * testsuite/ext/slist_explicit_instantiation.cc: New. + +2004-07-30 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, + num_get<>::_M_extract_int): In the main parsing loop delay the + life of __q to the actual use point. + +2004-07-29 Paolo Carlini + + PR libstdc++/14220 + * include/bits/locale_facets.tcc (num_put<>::_M_insert_float): + Don't clip the precision passed down to __convert_from_v: + 22.2.2.2.2 nowhere says so. + * testsuite/22_locale/num_put/put/char/14220.cc: New. + * testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise. + +2004-07-29 Paolo Carlini + + * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 31. + +2004-07-29 Paolo Carlini + Petur Runolfsson + + PR libstdc++/12658 (continued) + * src/locale_init.cc (locale::locale, locale::global): Use + a single locale_mutex instead of two separate mutexes. + +2004-07-29 Paolo Carlini + + PR libstdc++/16813 + * include/debug/map.h (insert(_InputIterator, _InputIterator)): + Fix typo. + * testsuite/23_containers/map/insert/16813.cc: New. + +2004-07-29 Phil Edwards + + * docs/html/faq/index.html: Update version references. Make + clear that code from SGI has diverged greatly. Remove references + to library snapshots and what's-new sections. + * docs/html/faq/index.txt: Regenerate. + +2004-07-28 Matt Austern + + * include/bits/stl_construct.h (_Destroy): New three-argument + overload that takes an allocator argument. Another inline + three-argument overload that takes std::allocator and dispatches + to the two-argument version. + * include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux): + Change return type to void to match uninitialized_fill_n. + (__uninitialized_copy_a_): New function. Like uninitialized_copy + except that it takes an allocator and uses it for construct and + destroy. If the allocator is std::allocator, dispatches to + uninitialized_copy. + (__uninitialized_fill_a): Likewise. + (__uninitialized_fill_n_a): Likewise. + (__uninitialized_copy_copy): Give it an allocator argument. + (__uninitialized_fill_copy): Likewise. + (__uninitialized_copy_fill): Likewise. + * include/bits/deque.tcc: Use new forms defined in stl_construct.h + and stl_uninitialized.h. Replace use of single-argument _Construct + and _Destroy with use of allocator's construct and destroy methods. + * include/bits/list.tcc: Likewise. + * include/bits/stl_deque.h: Likewise. + * include/bits/stl_list.h: Likewise. + * include/bits/stl_tree.h: Likewise. + * include/bits/stl_vector.h: Likewise. + * include/bits/vector.tcc: Likewise. + * include/ext/hashtable.h: Use rebind so that allocator_type + has correct type for a container's allocator. Replace use of + single-argument _Construct and _Destroy with use of allocator's + construct and destroy methods. + * include/ext/memory (__uninitialized_copy_n_a): New function. + Like uninitialized_copy_n except that it takes an extra parameter, + an allocator, and uses it for construct and destroy operations. + * include/ext/rope: Use new forms defined in stl_construct.h, + stl_uninitialized.h, and ext/memory. Replace use of single-argument + _Construct and _Destroy with allocator construct and destroy methods. + * include/ext/ropeimpl.h: Likewise. + * include/ext/slist.h: Likewise. + * testsuite/testsuite_allocator.h (check_construct_destroy): New. + * testsuite/testsuite_allocator.cc (check_construct_destroy): New. + * testsuite/23_containers/deque/check_construct_destroy.cc: New. + * testsuite/23_containers/list/check_construct_destroy.cc: New. + * testsuite/23_containers/set/check_construct_destroy.cc: New. + * testsuite/23_containers/vector/check_construct_destroy.cc: New. + * testsuite/ext/hash_check_construct_destroy.cc: New. + * testsuite/ext/slist_check_construct_destroy.cc: New. + +2004-07-28 Alexandre Oliva + + 2003-10-01 Eric Christopher + * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm' + constraint. + 2003-07-09 Alexandre Oliva + * config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a. + +2004-07-23 Benjamin Kosnik + + PR libstdc++/16678 + * include/bits/locale_facets.tcc: Fix for -Werror. + +2004-07-23 Jonathan Wakely + + * docs/html/debug.html: Say debug mode only available since 3.4.0. + +2004-07-21 Benjamin Kosnik + + * docs/doxygen/mainpage.html: Clarify links. + * docs/doxygen/stdheader.cc: Add files. + * docs/doxygen/style.css: Remove bolds, add h2, h3 styles. + * docs/doxygen/user.cfg.in: New options, wrap. + +2004-07-20 Danny Smith + + * include/c_std/std_cwchar.h (wcsstr): Correct signature. + +2004-07-19 Benjamin Kosnik + + PR libstdc++/15488 + * testsuite/lib/libstdc++.exp (v3-copy-files): Revert. + +2004-07-17 Richard Sandiford + + PR bootstrap/16469 + * scripts/create_testsuite_files: Pass -print to find. + +2004-07-15 Paolo Carlini + + * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30. + * docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402. + +2004-07-15 Jakub Jelinek + + PR libstdc++/14697 + * acinclude.m4 (glibcxx_shared_libgcc): Correct + glibcxx_shared_libgcc test for multilibs. + * configure: Rebuilt. + +2004-07-14 Paolo Carlini + + PR libstdc++/16505 + * include/bits/stl_uninitialized.h (uninitialized_fill_n): Fix + the signature to return void, as per 20.4.4.3. + * include/bits/stl_vector.h (vector::vector(size_type, + const value_type&, const allocator_type&), vector::vector(size_type), + vector::_M_initialize_dispatch): Adjust callers. + * include/bits/vector.tcc (vector<>::_M_fill_assign, + vector<>::_M_fill_insert): Likewise. + * testsuite/20_util/memory/16505.cc: New. + +2004-07-14 Paolo Carlini + + * testsuite/22_locale/locale/cons/12658_thread-1.cc, + 12658_thread-2.cc: Use __gnu_test::try_named_locale. + +2004-07-13 Benjamin Kosnik + + * docs/html/ext/mt_allocator.html: Add docs for _Tune. + * include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public. + (__mt_alloc::_S_set_options): Same. + Add to comments. + +2004-07-13 Benjamin Kosnik + + * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults + for linux. + * configure: Regenerated. + +2004-07-13 Paolo Carlini + + * testsuite/22_locale/locale/cons/12658_thread.cc: Move/rename + to 12658_thread-1.cc and xfail. + * testsuite/22_locale/locale/cons/12658_thread-2.c: New, much + simpler version of 12658_thread-1.cc, still failing on 3_3 and + not failing on 3_4/mainline - both on single processor and + multiprocessor machines. + +2004-07-12 Benjamin Kosnik + + * docs/html/abi.html: Remove non-public qualification. + + * include/bits/concurrence.h: Tweak comments. + +2004-07-11 Paolo Carlini + + Add wchar_t counterparts of the basic_streambbuf tests. + * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: New. + * testsuite/27_io/basic_streambuf/imbue/wchar_t/1.cc, 9322.cc: + Likewise. + * testsuite/27_io/basic_streambuf/in_avail/wchar_t/9701-3.cc: Likewise. + * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc, 2.cc, + 3599.cc: Likewise. + * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise. + * testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise. + * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc, 1057.cc: + Likewise. + * testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise. + + * testsuite/27_io/basic_streambuf/imbue/char/1.cc, 9322.cc: Minor + tweaks. + * testsuite/27_io/basic_streambuf/overflow/char/2.cc, 3599.cc: + Likewise. + * testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise. + * testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise. + +2004-07-11 Phil Edwards + + * acinclude.m4: Cosmetic shell syntax fixes. + * configure.ac: Bring comment inline with reality. + * configure.host: Both of the above. Move 'arm' case to right + place in host_cpu switch. + * aclocal.m4, configure: Regenerate. + +2004-07-09 Paolo Carlini + + Add wchar_t counterparts of the basic_stringbuf tests. + * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc, 9322.cc: New. + * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc, 2.cc, + 3599.cc, 9988.cc: Likewise. + * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc, 9825.cc: + Likewise. + * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc: + Likewise. + * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc, 3.cc: + Likewise. + * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc, 2.cc, 3.cc: + Likewise. + * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc, 9425.cc: + Likewise. + * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc, 1057.cc, + 9404-1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc, 1057.cc, + 9404-2.cc: Likewise. + * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc, 2.cc, 3.cc, + 3955.cc: Likewise. + * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise. + * testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise. + +2004-07-08 Paolo Carlini + + * include/bits/gslice.h: Trivial formatting fixes. + * include/bits/gslice_array.h: Likewise. + * include/bits/indirect_array.h: Likewise. + * include/bits/mask_array.h: Likewise. + * include/bits/slice_array.h: Likewise. + * include/bits/valarray_after.h: Likewise. + * include/bits/valarray_array.h: Likewise. + * include/bits/valarray_before.h: Likewise. + * include/std/std_valarray.h: Likewise. + +2004-07-08 Benjamin Kosnik + + PR c++/16169 + * include/bits/basic_string.h (basic_string::operator=): Revert. + +2004-07-07 Benjamin Kosnik + + * configure.ac (libtool_VERSION): To 6:2:0. + * configure: Regenerated. + + * testsuite/testsuite_abi.cc (check_version): Add 3.4.2. + +2004-07-07 Aaron W. LaFramboise + + PR libstdc++/16411 + * config/linker-map.gnu: Add stdio_sync_filebuf::file exports. + +2004-07-07 Benjamin Kosnik + + * docs/html/abi.html: Updates for 3.4.1 release. Add summary of + -Weffc++ issues. + +2004-07-07 Paolo Carlini + + PR libstdc++/16401 + * include/bits/sstream.tcc (overflow): When reallocating _M_string + use an exponential grow policy. + * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New. + * testsuite/performance/27_io/stringbuf_overflow.cc: New. + +2004-07-06 Anssi Hannula + + PR libstdc++/15928 + * crossconfig.m4: Add in bits for djgpp. + * configure: Regenerate. + +2004-07-05 Jonathan Wakely + + * testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in + instantiation of set and multiset (functor param given as int). + +2004-07-04 Paolo Carlini + + * include/bits/basic_string.h: Trivial formatting fixes and/or + const-ification of some variables. + * include/bits/deque.tcc: Likewise. + * include/bits/stl_algobase.h: Likewise. + * include/bits/stl_bvector.h: Likewise. + * include/bits/stl_construct.h: Likewise. + * include/bits/stl_deque.h: Likewise. + * include/bits/stl_pair.h: Likewise. + * include/bits/stl_vector.h: Likewise. + * include/bits/vector.tcc: Likewise. + +2004-07-04 Paolo Carlini + + * testsuite/25_algorithms/copy/1.cc: Add instantiations for + systems with no COMDAT or weak support. + * testsuite/25_algorithms/copy/2.cc: Likewise. + * testsuite/25_algorithms/copy/3.cc: Likewise. + * testsuite/25_algorithms/copy/4.cc: Likewise. + +2004-07-03 Paul Brook + + * configure.ac: Set ABI_TWEAKS_SRCDIR. + * configure.host: Set abi_tweaks_dir. Check for atomicity.h when + setting atomicity_dir. Override type_cpu for arm based targets. + * include/Makefile.am (host_headers): Add cxxabi_tweaks.h. + * libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard. + * libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h. + * libsupc++/vec.cc: Ditto. + * config/cpu/arm/cxxabi_tweaks.h: New file. + * config/cpu/generic/cxxabi_tweaks.h: New file. + * */Makefile.in: Regenerate. + * configure: Regenerate. + +2004-07-02 Paolo Carlini + + * include/bits/type_traits.h (_Is_normal_iterator): Move... + * include/bits/cpp_type_traits.h: ... here, renamed to + __is_normal_iterator and consistent with the other traits. + * include/bits/stl_algobase.h (__copy_ni1, __copy_ni2): Convert + to the struct __copy_normal and three specializations. + (__copy_backward_output_normal_iterator, + __copy_backward_input_normal_iterator): Likewise, convert to + the struct __copy_backward_normal and three specializations. + (copy, copy_backward): Use the latter. + (__copy_aux, __copy_backward_aux): Very minor tweaks. + +2004-07-01 Paolo Carlini + + * include/bits/stl_algobase.h (__copy_trivial): Remove. + (__copy_aux2): Rewrite as __copy_aux to use __is_pointer, + __is_trivially_copyable, __are_same and __copy::copy. + (__copy): Rewrite as a class template and two specializations. + (__copy_ni2): Simplify, just call __copy_aux. + + * include/bits/stl_algobase.h (__copy_backward_aux): Add __are_same + check. + * testsuite/25_algorithms/copy/1.cc, 2.cc, 3.cc, 4.cc: Test also + for destination value type != source value type. + +2004-07-01 Benjamin Kosnik + Per Bothner + Mohan Embar + + PR libstdc++/16248 + * include/bits/concurrence.h (__glibcxx_mutex_type): New. + (__glibcxx_mutex): Encapsulate mutex init function into type for + threaded configurations without __GTHREAD_MUTEX_INIT. + (lock::lock): Make device member a reference. + (lock::~lock): Same. + * include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change + to mutex_type. + * src/allocator.cc: Same. + +2004-06-30 Brad Spencer + + * include/ext/mt_allocator.h: Handle allocations at static + initialization that happen before _S_options is (automatically) + constructed; set _S_init even if _M_force_new is true. + +2004-06-30 Benjamin Kosnik + + * config/linker-map.gnu: Revert new exports. + +2004-06-30 Benjamin Kosnik + Stuart Anderson + + * config/linker-map.gnu: Add destructor exports for abstract base + classes to conform to LSB. + +2004-06-30 Gabriel Dos Reis + Paolo Carlini + + * include/bits/cpp_type_traits.h: Add __is_pointer and + __is_trivially_copyable. + * include/bits/stl_algobase.h (fill, fill_n): Slightly + tweak to use the latter. + (__copy_backward_dispatch): Remove. + (__copy_backward_aux): Rewrite to use __is_pointer and + __is_trivially_copyable and __copy_backward::copy_b. + (__copy_backward): Rewrite as a class template and two + specializations. + +2004-06-30 Paolo Carlini + + * testsuite/25_algorithms/copy.cc: Move to... + * testsuite/25_algorithms/copy/1.cc: ... here, extend. + * testsuite/25_algorithms/copy/2.cc: New. + * testsuite/25_algorithms/copy/3.cc: New. + * testsuite/25_algorithms/copy/4.cc: New. + +2004-06-29 Paul Brook + + * libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the + element size in the cookie. + +2004-06-28 Paolo Carlini + + * include/bits/cpp_type_traits.h: Move the additions to + namespace __gnu_internal outside of namespace std; trivial + formatting fixes. + +2004-06-28 Benjamin Kosnik + + * include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base): + Revert -Weffc++ changes that defined copy ctory and or assignment + operator. + * libsupc++/tinfo.cc (__upcast_result): Same. + +2004-06-28 Paolo Carlini + + * src/localename.cc (locale::_Impl::_Impl): Slightly improve + the algorithm used to name the categories. + +2004-06-28 Paolo Bonzini + + * include/Makefile.am: Give a .gch extension to + the PCH files, not only to the directory. + * include/Makefile.in: Regenerate. + +2004-06-28 Paolo Carlini + + * config/locale/gnu/monetary_members.cc + (moneypunct::_M_initialize_moneypunct): Clean up + assignments of _M_decimal_point and _M_thousands_sep. + +2004-06-27 Paolo Carlini + + * docs/html/17_intro/contribute.html: Update some links. + * docs/html/17_intro/porting-howto.html: Likewise. + * docs/html/17_intro/porting-howto.xml: Likewise. + * docs/html/18_support/howto.html: Likewise. + * docs/html/21_strings/howto.html: Likewise. + * docs/html/27_io/howto.html: Likewise. + * docs/html/configopts.html: Likewise. + * docs/html/ext/howto.html: Likewise. + * docs/html/faq/index.html: Likewise. + * docs/html/install.html: Don't mention 2.x compilers. + +2004-06-27 Paolo Carlini + + * include/ext/rope: Trivial formatting fixes. + * include/ext/ropeimpl.h: Likewise. + +2004-06-26 Paolo Carlini + + PR libstdc++/16210 + * acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the + availability of strto(u)ll, not used anymore in the iostreams. + * configure: Regenerate. + +2004-06-25 Benjamin Kosnik + + PR libstdc++/16182 + * linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to + AC_DEFINE_UNQUOTED. + * configure: Regenerate. + +2004-06-25 Paul Brook + + * libsupc++/cxxabi.h: Define __ARM_EABI__ + (__guard): Use it. + * libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto. + +2004-06-25 Paul Brook + + * include/bits/concurrence.h: Still create mutex object when + single-threaded. + +2004-06-25 Paolo Carlini + + * include/bits/stl_algobase.h (fill, fill_n): Revert last + change: actually we need to copy construct an object of type + _Tp, not of type iterator_traits<>::value_type, therefore the + code is ok. + +2004-06-25 Paolo Carlini + + * include/bits/stl_algobase.h (fill, fill_n): Tighten the + dispatch: use iterator_traits<>::value_type, not _Tp. + +2004-06-25 Paolo Carlini + + * testsuite/25_algorithms/fill/1.cc: Tweak instantiations. + * testsuite/25_algorithms/fill/2.cc: Likewise. + +2004-06-25 Dan Nicolaescu + Paolo Carlini + + * include/bits/stl_algobase.h (__fill, __fill_n): New helpers + for fill and fill_n, respectively: when copying is cheap, use a + temporary to avoid a memory read in each iteration. + +2004-06-25 Paolo Carlini + + * testsuite/25_algorithms/fill/1.cc: New. + * testsuite/25_algorithms/fill/2.cc: Likewise. + +2004-06-25 Benjamin Kosnik + + * include/debug/formatter.h (__gnu_debug::_Error_formatter): + Remove copy constructor and assignment operator. + +2004-06-24 Benjamin Kosnik + + * include/bits/concurrence.h (__gnu_cxx::lock): New. + * include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove. + (__pool_base::_M_get_mutex): New. + * include/bits/allocator.h: Tweak. + * src/allocator.cc (__pool_base::_M_get_free_list): Correct offset. + * config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock. + * include/bits/stl_threads.h: Remove. + * include/Makefile.am: Also here. + * include/Makefile.in: Regenerate. + + * src/locale_init.cc: Use __gnu_cxx::lock. + + * src/allocator.cc: Move all instantiations... + * src/allocator-inst.cc: ...here. + +2004-06-23 Andrew Pinski + + * linkage.m4: Remove check for libmx. + * configure: Regenerate. + +2004-06-23 Paolo Carlini + + PR libstdc++/16154 + * include/bits/boost_concept_check.h (struct _TrivialIteratorConcept): + Don't require the _DefaultConstructibleConcept. + (struct _ForwardIteratorConcept): Require it here. + +2004-06-22 Alexandre Oliva + + * include/bits/istream.tcc (getline): Make sure arguments passed + to min/max have the same type. + * include/bits/locale_facets.tcc (__verify_grouping): Likewise. + * include/bits/stl_deque.h (_Deque_base::_Deque_base): Likewise. + +2004-06-22 Benjamin Kosnik + + * docs/html/abi.html: Update links. + +2004-06-22 Paolo Carlini + + * testsuite/26_numerics/complex_inserters_extractors.cc, + complex_value.cc, buggy_complex.cc: Move to... + * testsuite/26_numerics/complex/: ... here. + * testsuite/26_numerics/c99_classification_macros_c++.cc, + c99_classification_macros_c.cc, c_math.cc, c_math_dynamic.cc, + fabs_inline.cc: Move to... + * testsuite/26_numerics/cmath/: ... here. + * testsuite/26_numerics/binary_closure.cc, slice.cc, + slice_array_assignment.cc, valarray.cc, valarray_const_bracket.cc, + valarray_name_lookup.cc, valarray_operators.cc, + valarray_subset_assignment.cc: Move to... + * testsuite/26_numerics/valarray/: ... here (new dir). + * testsuite/26_numerics/sum_diff.cc: Move to... + * testsuite/26_numerics/numeric/: ... here (new dir). + +2004-06-22 Paolo Carlini + + * include/std/std_istream.h (ignore(streamsize __n = 1, + int_type __delim = traits_type::eof())): Split into... + (ignore(), ignore(streamsize __n), ignore(streamsize __n, + int_type __delim)): The first two can be much more simpler + and efficient than the fully general case; also, the last + two can take advantage of the same mechanism already used + for getline. + * include/bits/istream.tcc (ignore(streamsize __n = 1, + int_type __delim = traits_type::eof()): Remove. + (ignore(), ignore(streamsize __n), ignore(streamsize __n, + int_type __delim)): New. + +2004-06-21 Loren J. Rittle + + * config/linker-map.gnu: Use wildcards for + __basic_file::sys_open(FILE*, _Ios_Openmode). + +2004-06-20 Paolo Carlini + + * testsuite/27_io/basic_istream/ignore/char/3.cc: New. + +2004-06-18 Paolo Carlini + + * include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align, + the alignment requested. + (__mt_alloc<>::_Tune::_Tune): Tweak consistently. + (__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record). + (__mt_alloc<>::deallocate): Likewise. + +2004-06-18 Paolo Carlini + + PR libstdc++/16020 + * include/debug/safe_base.h + (_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&), + _Safe_sequence_base::operator=): Provide definitions. + * testsuite/23_containers/bitset/cons/16020.cc: New. + +2004-06-18 Benjamin Kosnik + + * include/ext/pool_allocator.h: Qualify __throw_bad_alloc. + (__pool_base): Remove unused template parameter. Add + protected. Move lock data into __pool_base::_Lock. Remove static + on member functions. + (__pool_base::_M_get_free_list): New. + (__pool_alloc): Move _S_force new here. + * src/allocator.cc: Move out of line __pool_base definitions here. + * config/linker-map.gnu: Export bits from __pool_base. + +2004-06-18 Paolo Carlini + + * config/locale/gnu/numeric_members.cc + (numpunct::_M_initialize_numpunct): Clean up + assignments of _M_decimal_point and _M_thousands_sep. + * config/locale/gnu/time_members.cc + (__timepunct::_M_initialize_timepunct): Clean up + and reformat assignments of date and time fields. + +2004-06-16 Paolo Carlini + + * include/ext/rope (rope(_CharT, const allocator_type&)): Fix + to use _Data_allocate. + * include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise. + (rope<>::_S_substring): Likewise. + (rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise. + (rope<>::c_str()): Likewise. + (rope<>::replace_with_c_str()): Likewise. + + * include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf): + Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::, + not _RopeRep. + (_Rope_iterator_base<>::_S_setcache): Likewise. + (_Rope_iterator_base<>::_S_setcache_for_incr): Likewise. + (rope<>::_S_substring): Likewise. + (rope<>::_S_dump): Likewise. + (rope<>::_S_fetch_ptr): Likewise. + (rope<>::_S_compare): Likewise. + (rope<>::replace_with_c_str()): Likewise. + + * testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc. + * testsuite/ext/rope/2.cc: New. + +2004-06-16 Paolo Carlini + Matt Austern + + * testsuite/ext/rope/3.cc: New. + +2004-06-15 Paolo Bonzini + + * acinclude.m4: Remove useless multilib configury. + * Makefile.am: Remove useless multilib rules. + * aclocal.m4: Regenerate. + * Makefile.in: Regenerate. + * configure: Regenerate. + +2004-06-15 Paolo Carlini + + * include/ext/hashtable.h: Trivial formatting fixes. + * include/ext/rb_tree: Likewise. + +2004-06-14 Paolo Carlini + + * include/ext/hash_map: Trivial formatting fixes. + * include/ext/hash_set: Likewise. + * include/ext/memory: Likewise. + * include/ext/numeric: Likewise. + +2004-06-14 Benjamin Kosnik + + * Makefile.in: Regenerate with automake 1.8.5. + * aclocal.m4: Same. + * include/Makefile.in: Same. + * libmath/Makefile.in: Same. + * libsupc++/Makefile.in: Same. + * po/Makefile.in: Same. + * src/Makefile.in: Same. + * testsuite/Makefile.in: Same. + +2004-06-14 Paolo Carlini + + * include/ext/slist: Trivial formatting fixes. + +2004-06-14 Paolo Carlini + + * include/bits/locale_facets.tcc (time_get<>::_M_extract_name): + Don't use the 'magic number' 10 in the computation of __minlen; + never access __name past __minlen; in the loop over __i3, don't + decrease __nmatches and increase __i3 at once, only either of + the two; tidy. + +2004-06-13 Paolo Carlini + + * include/bits/locale_facets.tcc (time_get<>::do_get_time, + time_get<>::do_get_date): Use only once _M_extract_via_format, + instead of going through "%X"/"%x" and calling it two times + (+ using widen). + +2004-06-12 Paolo Carlini + + * include/ext/algorithm: Trivial formatting fixes. + * include/ext/functional: Likewise. + * include/ext/hash_fun.h: Likewise. + * include/ext/iterator: Likewise. + +2004-06-12 Paolo Carlini + + * include/bits/basic_string.tcc (find(const _CharT*, size_type, + size_type)): Reimplement using std::search. + * src/string-inst.cc: Instantiate std::search for char/wchar_t. + +2004-06-12 Dhruv Matani + + * testsuite/performance/21_strings/string_find.cc: New. + +2004-06-10 Aaron W. LaFramboise + + * include/bits/istream.tcc (istream::ignore): Fix for -Wuninitialized. + +2004-06-10 Jan van Dijk + + * include/std/std_complex.h (sin(const complex<_Tp>& __z)): Make + this function return a value. + +2004-06-09 Paolo Carlini + + PR libstdc++/15775 + * include/bits/stl_deque.h: Consistently with stl_set.h, define + pointer as allocator's pointer, likewise for reference, + const_pointer, and const_reference. + * include/bits/stl_list.h: Likewise. + * include/bits/stl_map.h: Likewise. + * include/bits/stl_multimap.h: Likewise. + * include/bits/stl_vector.h: Likewise. + +2004-06-09 Benjamin Kosnik + + * crossconfig.m4: Remove signbit, signbitf, signbitl. + * linkage.m4: Comment LIBMATHOBJS, tweak others. AC_DEFINES for + builtin math functions instead of AC_DEFINE_UNQUOTED. + * configure: Regenerate. + +2004-06-08 Benjamin Kosnik + + * docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std. + * docs/doxygen/mainpage.html: Remove links. + +2004-06-08 Jason Merrill + + * config/linker-map.gnu: Use wildcards for + __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}. + +2004-06-08 Paolo Carlini + + * include/ext/pool_allocator.h: Convert to a global free-list, + as per the original SGI/HP design: move the implementation + details to struct __pool_base, from which __pool_alloc derives. + * src/allocator.cc: Instantiate __pool_base. + +2004-06-07 Dhruv Matani + Paolo Carlini + + * testsuite/testsuite_performance.h + (resource_counter::allocated_memory): Make it return the right + number of bytes requested by the allocators/application. This is + the sbrk+mmaped memory. + +2004-06-02 Gabriel Dos Reis + + * include/std/std_complex.h (log): Tidy. + +2004-05-31 Benjamin Kosnik + + * config/linker-map.gnu (GLIBCXX_3.4.1): Add. + * testsuite/testsuite_abi.cc: Same. + * configure.ac (libtool_VERSION): Bump to 6:1:0. + * configure: Regenerate. + * aclocal.m4: Regenerate. + +2004-05-30 Gabriel Dos Reis + + * include/std/std_complex.h (complex<_Tp>): Properly indent + to follow C++STYLE. + (complex<>::__rep): New. + (__complex_abs): New. Dispatch to built-ins. + (abs): Use them. + (__complex_arg): New. Dispatch to built-ins. + (arg): Use it. + (__complex_cos): New. Dispatch to built-ins. + (cos): Use it. + (__complex_cosh): New. Dispatch to built-ins. + (cosh): Use it. + (__complex_exp): New. Dispatch to built-ins. + (exp): Use it. + (__complex_log): New. Dispatch to built-ins. + (log): Use it. + (__complex_sin): New. Dispatch to built-ins. + (sin): Use it. + (__complex_sinh): New. Dispatch to built-ins. + (sinh): Use it. + (__complex_sqrt): New. Dispatch to built-ins. + (sqrt): Use it. + (__complex_tan): New. Dispatch to built-ins. + (tan): Use it. + (__complex_tanh): New. Dispatch to built-ins. + (tanh): Use it. + (__complex_pow): New. Dispatch to built-ins. + (pow): Use it. + +2004-05-29 Richard B. Kreckel + Benjamin Kosnik + + PR libstdc++/14600 + * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New. + * include/ext/stdio_filebuf.h (stdio_filebuf::file): New. + * config/io/basic_file_stdio.cc (__basic_file::file): New. + * config/io/basic_file_stdio.h: Define. + +2004-05-27 Benjamin Kosnik + + PR libstdc++/15675 + * docs/html/documentation.html: Update doxygen links for 3.4.0. + +2004-05-27 Jan Beulich + + * scripts/create_testsuite_files: Tweak. + +2004-05-25 Benjamin Kosnik + + PR libstdc++/15489 + * scripts/create_testsuite_files: Revert xtype change, add non-GNU + bits to do the same thing. + +2004-05-24 Paolo Carlini + + * include/bits/istream.tcc (ignore): Correctly deal with + n == numeric_limits::max(). + * testsuite/27_io/basic_istream/ignore/char/2.cc: New. + + * include/bits/istream.tcc (basic_istream<>::getline): Prefer + '_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case + __n == numeric_limits<>::min(). + + * include/bits/istream.tcc: Minor tweaks. + + * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc: + Tighten. + * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc: + Likewise. + * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc: + Likewise. + * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc: + Likewise. + * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise. + +2004-05-22 Benjamin Kosnik + + PR libstdc++/12854 + Fixups for -Weffc++. + * include/bits/basic_string.h (basic_string::operator=): Return + pointer to this instead of result of assign. Although redundant, + this doesn't impact resultant codegen. + + * include/bits/locale_facets.h (__numpunct_cache): Declare + assignment opxserator and copy constructor private. + (__timepunct_cache): Same. + (__moneypunct_cache): Same. + (collate): Use member initialization list for _M_c_locale_collate. + * config/locale/gnu/messages_members.h: Same. + * config/locale/gnu/time_members.h (__timepunct): Same. + * src/codecvt.cc: Use member initialization list to initialize + _M_c_locale_codecvt. + * src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok. + * config/os/gnu-linux/ctype_noninline.h: Same. + * src/locale.cc (_Impl): Same. + * src/locale_init.cc: Same. + * src/localename.cc: Same. + + * include/bits/basic_ios.h (basic_ios): Complete member + initialization list. + * include/bits/istream.tcc (basic_istream::sentry): Same. + * include/bits/ostream.tcc (basic_ostream::sentry): Same. + * include/bits/fstream.tcc (basic_filebuf): Add _M_lock and + _M_pback to member initialization list. + * include/std/std_streambuf.h: Same. + * include/std/std_sstream.h: Same, for _M_mode. + * src/ios.cc (ios_base): Same. + + * include/ext/rope: Make derived classes match exception + + specifications. Add copy constructors and assignment operators. + + * include/debug/safe_base.h (_Safe_sequence_base): Declare copy + constructor and assignment operator protected. + (_Safe_iterator_base): Same. + * include/debug/formatter.h (_Error_formatter): Define copy + constructor and assignment operator. + + * include/backward/strstream: Declare assignment operator and copy + constructor private. + +2004-05-22 Benjamin Kosnik + + * testsuite/testsuite_hooks.h (func_callback): Declare copy + constructor and assignment operator private. + * testsuite/23_containers/deque/cons/clear_allocator.cc: Match + exception specifications of base class. + * testsuite/23_containers/list/cons/clear_allocator.cc: Same. + * testsuite/23_containers/vector/cons/clear_allocator.cc: Same. + * testsuite/23_containers/vector/bool/clear_allocator.cc: New. + +2004-05-22 Benjamin Kosnik + + * libsupc++/cxxabi.h: Remove duplicated and useless public and + private keywords in class declarations. Format. Use + stddef.h. Expose declarations to "C" compilation. + * libsupc++/tinfo.cc (__upcast_result): Add copy constructor and + assignment operator. + (__dyncast_result): Same. + * libsupc++/vec.cc (uncatch_exception): Same, use member + initialization list. + +2004-05-22 Benjamin Kosnik + + * testsuite/abi_check.cc: Add unistd.h. + +2004-05-22 Paolo Carlini + + PR libstdc++/15565 + * include/bits/locale_facets.tcc (__int_to_char(unsigned long), + __int_to_char(unsigned long long)): Showpos is not relevant + for unsigned types. + * testsuite/22_locale/num_put/put/char/15565.cc: New. + * testsuite/22_locale/num_put/put/wchar_t/15565.cc: New. + + * testsuite/22_locale/num_put/put/wchar_t/1.cc: Use L for the fill + char. + * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise. + * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise. + * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise. + * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise. + * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise. + * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise. + +2004-05-21 Matthias Klose + + * docs/doxygen/run_doxygen: Bump required version. + +2004-05-21 Benjamin Kosnik + + * docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose. + * docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards. + +2004-05-21 Paolo Carlini + + * include/bits/istream.tcc (ignore): Remove redundant line. + (readsome): Tidy, closely following 27.6.1.3, p30. + +2004-05-20 Paolo Carlini + + * include/bits/istream.tcc (operator>>(basic_istream<>&, + basic_string<>&)): Use a temporary buffer, thus avoiding + reallocation for common case. + * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc: + New. + * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc: + Likewise. + + * include/bits/istream.tcc: Const-ification of a few variables. + + * include/bits/ostream.tcc: Trivial formatting fixes and + const-ification of some variables. + +2004-05-20 Benjamin Kosnik + + PR libstdc++/15123 + PR libstdc++/13928 + * docs/doxygen/Intro.3: Remove Allocators.3. + Add new extension headers, extension namespace list. + * docs/doxygen/run_doxygen (problematic): Remove Allocators.3 + Rename GLIBCXXSTD names to std::. Rename __gnu_debug to + __gnu_debug::. Remove __policy_ renames. + * docs/doxygen/guide.html: Add dot note. + * docs/doxygen/stdheader.cc: Edit, add files. + * docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7. + +2004-05-18 Jonathan Wakely + + * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691. + +2004-05-18 Jan Beulich + + PR libstdc++/15489 + * scripts/create_testsuite_files: Also find source files through + symbolic links. + +2004-05-18 Jan Beulich + + PR libstdc++/15488 + * testsuite/lib/libstdc++.exp: Make test files writable. + +2004-05-18 Paolo Carlini + + * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor + tweaks. + +2004-05-18 Dhruv Matani + + * include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write + allocation loop which removes blocks from the global free list + from O(N) to O(1) when the required blocks are <= the number + available. + +2004-05-18 Jonathan Wakely + + * include/ext/enc_filebuf.h: Move concept-check macro to class scope. + +2004-05-17 Benjamin Kosnik + + * testsuite/testsuite_hooks.h (__gnu_test::conversion): New class. + * testsuite/23_containers/deque/14340.cc: New. + * testsuite/23_containers/list/14340.cc: New. + * testsuite/23_containers/map/14340.cc: New. + * testsuite/23_containers/multimap/14340.cc: New. + * testsuite/23_containers/multiset/14340.cc: New. + * testsuite/23_containers/set/14340.cc: New. + * testsuite/23_containers/vector/14340.cc: New. + +2004-05-17 Douglas Gregor + + PR libstdc++/14340 + * include/debug/safe_iterator.h (_Safe_iterator converting + constructor): Only allow declaration to instantiate when the + incoming _Safe_iterator has exactly the right iterator type. + +2004-05-17 Jonathan Wakely + + * include/bits/boost_concept_check.h: Fix old attribute syntax. + * testsuite/23_containers/map/modifiers/swap.cc: Define operator< + to pass concept-checks. + * testsuite/23_containers/multimap/modifiers/swap.cc: Same. + * testsuite/23_containers/set/modifiers/swap.cc: Same. + * testsuite/23_containers/multiset/modifiers/swap.cc: Same. + +2004-05-16 Paolo Carlini + + * include/std/std_bitset.h: Minor formatting fixes. + +2004-05-16 Paolo Carlini + + * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): + Consistently update __bin._M_free[0]. + (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use + __bin._M_free[0] to simplify the while loop (i.e., the number + of iterations becomes known at the outset). + +2004-05-15 Paolo Carlini + + * include/std/std_bitset.h: Trivial formatting fixes. + +2004-05-14 Paolo Carlini + Ivan Godard + + PR libstdc++/15361 + * include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix. + * testsuite/23_containers/bitset/ext/15361.cc: New. + +2004-05-13 Benjamin Kosnik + + PR libstdc++/15046 + * crossconfig.m4: Add C99 math bits for linux crosses. + * configure: Regenerate. + +2004-05-13 Simon Marshall + Benjamin Kosnik + + PR libstdc++/15090 + * include/bits/locale_facets.h: Fix for -fno-for-scope. + * include/debug/safe_sequence.h: Same. + * include/debug/safe_iterator.tcc: Same. + * src/debug.cc: Same. + * src/locale.cc: Same. + * src/locale_init.cc: Same. + * src/localename.cc: Same. + * config/locale/gnu/ctype_members.cc: Same. + * config/locale/gnu/numeric_members.cc: Same. + * testsuite/testsuite_abi.cc: Same. + * testsuite/testsuite_hooks.cc: Same. + +2004-05-13 Jonathan Wakely + + * docs/html/abi.html: Document effect of -fabi-version on value + of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c. + Fix markup. + +2004-05-13 Benjamin Kosnik + + PR libstdc++/15074 + * docs/html/faq/index.html: Update docs for libsupc++ usage. + +2004-05-13 Benjamin Kosnik + + PR libstdc++/15412 + * include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace + __gnu_internal. + (_GLIBCXX_mutex_address): Same. + (_GLIBCXX_once): Same. + (_GLIBCXX_mutex_init): Same. + (_GLIBCXX_mutex_address_init): Same. + +2004-05-13 Benjamin Kosnik + + * docs/html/abi.html: New. + * docs/html/abi.txt: Remove. + * docs/html/documentation.html: Add link. + * testsuite/Makefile.am: Add files. + * testsuite/Makefile.in: Regenerated. + * testsuite/abi_check.cc: Move and modify code into... + * testsuite/testsuite_abi.cc: Add. + * testsuite/testsuite_abi.h: Add. + + * docs/html/17_intro/TODO: Update. + * include/bits/stl_pair.h: Format. + +2004-05-06 Matthias Klose + + * include/backward/iterator.h: Add GPL copyright info, + with exception clause. + * include/bits/boost_concept_check.h: Likewise. + * include + * libsupc++/tinfo.h: Likewise. + * po/string_literals.cc: Likewise. + +2004-05-03 Andreas Tobler + + * acinclude.m4: Replace -W with more speaking -Wextra. + * configure: Rebuilt. + +2004-05-03 Paolo Carlini + + Optimize locale::_M_impl->_M_names for the most common cases: + !_M_names[0] means unnamed; !_M_names[1] means all the categories + the same name (_M_names[0] && _M_names[1] means that the full set + of _M_names must be processed, the general case). + * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name): + Tweak, saving work when !_M_names[1]. + (locale::locale(const locale&, _Facet*): Simplify: now just setting + _M_names[0] = 0 means unnamed. + * src/locale.cc (locale::operator==): Deal first with the common, + easy cases, otherwise fall back to locale::name(). + (locale::name()): Tweak, if !_M_names[0] just return "*". + (locale::_Impl::_Impl(const _Impl&, size_t): Tweak, early stop + copying __imp._M_names if !__imp._M_names[0] or !__imp._M_names[1]. + * src/locale_init.cc (locale::_Impl::_Impl(size_t)): Tweak. + * src/localename.cc (locale::_Impl::_Impl(const char*, size_t): + Simplify when !std::strchr, just updating _M_names[0]; clean up. + (locale::_Impl::_M_replace_categories): When !_M_names[1] prepare + for the general case (full set of names), then do the usual work; + clean up. + + * src/locale.cc (locale::name()): Reserve space in __ret. + * src/locale_init.cc (locale::global(const locale&)): Save + the name in a temporary. + * src/localename.cc (locale::locale(const char*)): Reserve space + in __str. + +2004-04-29 Paolo Carlini + + * src/locale.cc (locale::operator==): Always avoid constructing + locale::name(), directly compare pairs of _M_names. + +2004-04-26 Paolo Carlini + + * include/bits/istream.tcc: Fix comment. + +2004-04-26 Paolo Carlini + + * include/bits/stl_vector.h: Trivial formatting fixes. + * include/bits/vector.tcc: Likewise. + +2004-04-25 Paolo Carlini + + PR libstdc++/15002 (continued again) + * include/bits/istream.tcc (getline(basic_istream<>&, + basic_string<>&, _CharT)): Use a temporary buffer, thus + avoiding reallocation for common case. + + * include/bits/basic_string.tcc (_S_construct(_InIterator, + _InIterator, const _Alloc&, input_iterator_tag)): Tweak size + of temporary buffer to a power of two. + + * testsuite/27_io/basic_istream/getline/char/4.cc: Add comment. + +2004-04-25 Paolo Carlini + + * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc: + New. + * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc: + Likewise. + * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise. + +2004-04-24 Paolo Carlini + Petur Runolfsson + + PR libstdc++/15002 (continued) + * include/bits/istream.tcc (basic_istream<>::getline(char_type*, + streamsize, char_type)): Use traits::find/copy in a loop to speed + up greatly the function in the common case (I/O buffer size >> 1). + +2004-04-24 Paolo Carlini + + * testsuite/27_io/basic_istream/getline/char/4.cc: New. + + * include/bits/istream.tcc (getline(basic_istream<>&, + basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead + of sbumpc(), consistently with the other functions, thus also + dealing correctly with the case of exceeded string::max_size(). + +2004-04-24 Matthias Klose + + Jonathan Wakely + * docs/html/configopts.html: Fix reference to allocator config option. + +2004-04-23 Andrew Pinski + + * linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also. + * configure: Regenerate. + +2004-04-23 Daniel Jacobowitz + + PR libstdc++/15047, libstdc++/11610 + * testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download. + (libstdc++_init): Don't pass outdir to v3-copy-files. + +2004-04-21 Paolo Carlini + + * include/bits/deque.tcc: Trivial formatting fixes. + * include/bits/stl_deque.h: Likewise. + * include/bits/stl_list.h: Likewise. + * include/bits/stl_tree.h: Likewise. + +2004-04-21 Paolo Carlini + Andrew Pinski + + * include/bits/basic_string.tcc (_M_mutate): Don't compute + __src unnecessarily. + +2004-04-19 Benjamin Kosnik + + * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc: + Clarify assertion, set test variable to false before assert. + * testsuite/27_io/basic_istringstream/str/char/1.cc: Same. + * testsuite/27_io/basic_stringstream/str/char/1.cc: Same. + * testsuite/27_io/ios_base/storage/2.cc: Same. + + * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix + function returns. + * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same. + * testsuite/27_io/fpos/14320-3.cc: Same. + + * testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std. + * testsuite/27_io/fpos/1.cc: Same. + * testsuite/27_io/basic_stringstream/2.cc: Same. + * testsuite/27_io/basic_stringbuf/4.cc: Same. + * testsuite/27_io/basic_stringbuf/1.cc: Same. + * testsuite/27_io/basic_stringbuf/2.cc: Same. + * testsuite/27_io/basic_streambuf/2.cc: Same. + * testsuite/27_io/basic_ostringstream/2.cc: Same. + * testsuite/27_io/basic_ostream/2.cc: Same. + * testsuite/27_io/basic_ofstream/2.cc: Same. + * testsuite/27_io/basic_istringstream/2.cc: Same. + * testsuite/27_io/basic_istream/2.cc: Same. + * testsuite/27_io/basic_iostream/2.cc: Same. + * testsuite/27_io/basic_ios/2.cc: Same. + * testsuite/27_io/basic_ifstream/2.cc: Same. + * testsuite/27_io/basic_fstream/2.cc: Same. + * testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx. + + * testsuite/21_strings/basic_string/capacity/1.cc: Don't compare + unsigned against zero. + * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same. + * testsuite/21_strings/basic_string/capacity/char/1.cc: Same. + + * testsuite/18_support/new_delete_placement.cc: Initialize + variables before first use. + * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same. + * testsuite/21_strings/char_traits/requirements/char/1.cc: Same. + * testsuite/21_strings/char_traits/requirements/short/1.cc: Same. + * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc: + Same. + * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_badbit_throw.cc: Same. + * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc: + Same. + * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_failbit_throw.cc: Same. + * testsuite/27_io/types/2.cc: Same. + + * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary + file name. + * testsuite/27_io/fpos/14775.cc: Same. + +2004-04-19 Paolo Carlini + + PR libstdc++/15002 (partial) + * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe): + Special case __n2 == 1, not calling traits_type::assign/copy. + +2004-04-17 Benjamin Kosnik + + * include/bits/stl_bvector.h: Use _M_impl._M_start. + +2004-04-16 Benjamin Kosnik + + * include/bits/c++config (_GLIBCXX_STD): New. + * src/list.cc: Use it. + * include/std/std_bitset.h: Same. + * include/bits/vector.tcc: Same. + * include/bits/stl_set.h: Same. + * include/bits/stl_multiset.h: Same. + * include/bits/stl_multimap.h: Same. + * include/bits/stl_map.h: Same. + * include/bits/stl_list.h: Same. + * include/bits/stl_vector.h: Same. + * include/bits/stl_bvector.h: Same. + * include/bits/stl_deque.h: Same. + * include/bits/deque.tcc: Same. + * include/bits/list.tcc: Same. + * include/debug/vector: Same. + * include/debug/set.h: Same. + * include/debug/multiset.h: Same. + * include/debug/multimap.h: Same. + * include/debug/map.h: Same. + * include/debug/list: Same. + * include/debug/deque: Same. + * include/debug/bitset: Same. + * include/debug/formatter.h (__gnu_debug): Remove using directive. + Add using declaration for std::type_info. + * include/debug/safe_iterator.h: Add using declaration for + std::iterator_traits and std::pair. + * src/debug_list.cc: New. + * src/Makefile.am: Add debug_list.cc. + * src/Makefile.in: Regenerate. + * config/linker-map.gnu: Add _List_node_base exports for std and + __gnu_norm. + + * include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl + idiom that other containers use. + * testsuite/23_containers/vector/bool/clear_allocator.cc: New. + +2004-04-16 Paolo Carlini + + PR libstdc++/14975 + * include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt + in case of error. + * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New. + * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New. + +2004-04-16 Paolo Carlini + + * acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not + used anymore. + * config.h.in: Regenerate. + +2004-04-16 Paolo Carlini + + * config/locale/generic/monetary_members.cc + (moneypunct::_M_initialize_moneypunct): Avoid calling + btowc unnecessarily, just cast to wchar_t (the concerned chars + all belong to the basic character set). + * config/locale/generic/numeric_members.cc + (numpunct::_M_initialize_numpunct): Likewise. + * config/locale/gnu/monetary_members.cc + (moneypunct::_M_initialize_moneypunct): Likewise. + * config/locale/gnu/numeric_members.cc + (numpunct::_M_initialize_numpunct): Likewise. + +2004-04-15 Paolo Carlini + + * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl + avoid constructing unnecessarily this->name(). + +2004-04-14 Zack Weinberg + + * testsuite/Makefile.am: Add definition of AM_CXXFLAGS. + Change definition of CXX to use $(shell) instead of backticks. + * testsuite/Makefile.in: Regenerate. + +2004-04-12 Dhruv Matani + + * testsuite/performance/20_util/allocator/list_sort_search.cc: + Minor formatting fixes. + * testsuite/performance/20_util/allocator/map_mt_find.cc: + Likewise. + +2004-04-12 Paolo Carlini + + * config/locale/gnu/numeric_members.cc + (numpunct::_M_initialize_numpunct): No need to wrap + in __uselocale, since btowc is called for chars belonging to + the basic character set. + +2004-04-09 Paolo Carlini + + * testsuite/22_locale/messages/members/char/1.cc: Remove junk. + * testsuite/22_locale/messages/members/char/2.cc: Ditto. + * testsuite/22_locale/messages/members/char/3.cc: Ditto. + * testsuite/22_locale/num_get/get/char/1.cc: Ditto. + * testsuite/22_locale/num_get/get/char/2.cc: Ditto. + * testsuite/22_locale/num_get/get/char/3.cc: Ditto. + * testsuite/22_locale/num_get/get/wchar_t/1.cc: Ditto. + * testsuite/22_locale/num_get/get/wchar_t/2.cc: Ditto. + * testsuite/22_locale/num_get/get/wchar_t/3.cc: Ditto. + * testsuite/22_locale/num_put/put/char/1.cc: Ditto. + * testsuite/22_locale/num_put/put/char/2.cc: Ditto. + * testsuite/22_locale/num_put/put/char/3.cc: Ditto. + * testsuite/22_locale/num_put/put/wchar_t/1.cc: Ditto. + * testsuite/22_locale/num_put/put/wchar_t/2.cc: Ditto. + * testsuite/22_locale/num_put/put/wchar_t/3.cc: Ditto. + * testsuite/22_locale/numpunct/members/char/1.cc: Ditto. + * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Ditto. + +2004-04-07 Paolo Carlini + + * config/locale/generic/time_members.cc + (__timepunct::_M_initialize_timepunct, + __timepunct::_M_initialize_timepunct): the correct + _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively. + * config/locale/gnu/time_members.cc + (__timepunct::_M_initialize_timepunct, + __timepunct::_M_initialize_timepunct): Ditto. + * testsuite/22_locale/time_get/get_monthname/char/4.cc: New. + * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New. + + * testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk. + * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto. + * testsuite/22_locale/time_get/get_date/char/1.cc: Ditto. + * testsuite/22_locale/time_get/get_date/char/2.cc: Ditto. + * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto. + * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto. + * testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto. + * testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto. + * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto. + * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto. + * testsuite/22_locale/time_get/get_time/char/1.cc: Ditto. + * testsuite/22_locale/time_get/get_time/char/2.cc: Ditto. + * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto. + * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto. + * testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto. + * testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto. + * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto. + * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto. + * testsuite/22_locale/time_get/get_year/char/1.cc: Ditto. + * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto. + * testsuite/22_locale/time_put/put/char/1.cc: Ditto. + * testsuite/22_locale/time_put/put/char/2.cc: Ditto. + * testsuite/22_locale/time_put/put/char/3.cc: Ditto. + * testsuite/22_locale/time_put/put/char/4.cc: Ditto. + * testsuite/22_locale/time_put/put/char/5.cc: Ditto. + * testsuite/22_locale/time_put/put/char/6.cc: Ditto. + * testsuite/22_locale/time_put/put/char/7.cc: Ditto. + * testsuite/22_locale/time_put/put/char/8.cc: Ditto. + * testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto. + * testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto. + * testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto. + * testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto. + * testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto. + * testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto. + * testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto. + * testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto. + + * testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos. + +2004-04-07 Paolo Carlini + + * config/locale/gnu/monetary_members.cc + (moneypunct::_M_initialize_moneypunct): Prefer + _NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC, + and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC, + _NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING. + * config/locale/gnu/numeric_members.cc + (numpunct::_M_initialize_numpunct): Prefer DECIMAL_POINT + and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP. + +2004-04-06 Benjamin Kosnik + + Fixups for EDG front end. + * include/ext/rope: Instead of non-existent function + _Data_allocate, use allocator's allocate. Use this. + (namespace _Rope_constants): Move _S_max_rope_depth, and _Tag + enumerations from _Rope_RopeRep here. + * include/ext/ropeimpl.h: Same. + * src/ext-inst.cc (_S_min_len): Fix up definition. + + * config/locale/gnu/ctype_members.cc: Qualify base class members + with this. + * config/locale/generic/ctype_members.cc: Same. + * config/locale/gnu/messages_members.h: Same. + * config/locale/generic/messages_members.h: Same. + * src/ctype.cc: Same. + * include/bits/codecvt.h: Same. + + * include/bits/boost_concept_check.h: Declare. + (__error_type_must_be_an_unsigned_integer_type): Remove this. + (__error_type_must_be_an_integer_type): Remove this. + (__error_type_must_be_a_signed_integer_type): Remove this. + + * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast. + + * libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception + specification to definition. + (__cxa_allocate_exception): Same. + * libsupc++/eh_catch.cc (__cxa_begin_catch): Same. + * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same. + (__cxa_get_globals): Same. + + * libsupc++/del_op.cc: Add comment about freestanding. + +2004-04-05 Paolo Carlini + + * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): + The critical section is actually very small, only two assignments. + +2004-04-04 Paolo Carlini + Petur Runolfsson + + * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New, + adapted from libstdc++/11378. + +2004-04-03 Paolo Carlini + + * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out + some duplicated code. + (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used + in the single threaded case. + * testsuite/performance/20_util/allocator/list_sort_search.cc: + Reorder and renumber the tests consistently with the other testfiles. + * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto. + * testsuite/performance/20_util/allocator/map_thread.cc: Ditto. + * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto. + +2004-04-02 Paolo Carlini + + * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): + Rearrange arithmetic to avoid computing two divisions at + each deallocation. + +2004-04-01 Paolo Carlini + + * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize): + Streamline the second half, wrapping it in a single + '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding + conditionals inside loops. + +2004-04-01 Paolo Carlini + + PR libstdc++/14775 + * acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS. + * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call + GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define + to _GLIBCXX_RES_LIMITS. + (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to + HAVE_LIMIT_*. + * testsuite/testsuite_hooks.h: Declare set_file_limit. + * testsuite/testsuite_hooks.cc: Define it, using getrlimit + and setrlimit(RLIMIT_FSIZE). + * testsuite/27_io/fpos/14775.cc: New. + * config.h.in: Regenerate. + * configure: Likewise. + +2004-03-31 Paolo Carlini + + * config/locale/generic/c_locale.cc (__convert_to_v(long double&)): + In v3 uses of sscanf, the special floating-point numbers INF, + INFINITY, etc., cannot occur in input, therefore, if the latter + is too large, ERANGE is always stored in errno, no need of finitel. + +2004-03-30 Benjamin Kosnik + + PR libstdc++/14783 + * include/bits/stl_tree.h: Adjust initialization list order. + +2004-03-29 Loren J. Rittle + + * testsuite/thread/pthread7-rope.cc: Update comment to reflect test. + +2004-03-29 Paolo Carlini + + * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending + on allocator behavior, the memory pointed by data2 may well be not + trashed. + +2004-03-28 Chavdar Botev + + PR libstdc++/14245 + * include/bits/basic_string.tcc + (basic_string::basic_string(const basic_string&)): Pass to + _Rep::_M_grab the actual allocator of the string being constructed + not the default constructed one. + +2004-03-27 Benjamin Kosnik + + libstdc++ PR/13598 + * config/locale/ieee_1003.1-2001/codecvt_specializations.h + (__enc_traits::_M_destroy): New. + (__enc_traits::~__enc_traits): Use it. + (__enc_traits::operator=): Use _M_destroy, _M_init. + (__enc_traits::__enc_traits): Same. + +2004-03-27 Petur Runolfsson + + * testsuite/ext/enc_filebuf/char/13598.cc: New. + +2004-03-27 Paolo Carlini + + * include/ext/mt_allocator.h: Uglify consistently names of + variables, members and classes; tidy. + +2004-03-27 Dhruv Matani + + * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): + Deallocation loop rewrote. + +2004-03-26 Paolo Carlini + + * include/ext/mt_allocator.h (__mt_alloc<>::allocate, + __mt_alloc<>::deallocate): Protect two instances of + block->thread_id with __GTHREADS. + +2004-03-25 Gawain Bolton + + * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator + default argument in constructors. + (_Rb_tree::_M_empty_initialize): Remove. + +2004-03-25 Benjamin Kosnik + + * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers. + * testsuite/23_containers/set/operators/1_neg.cc: Same. + +2004-03-25 Dhruv Matani + + * include/bits/cpp_type_traits.h: Changed __is_pod + completely. Now, it does not use any of the previous type_traits + to detect the pod types, and it also detects function pointers as + POD types. + + * include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl, + which encapsulates the internal implementation of an rb_tree. Made + the allocator a base class of this class instead of the rb_tree, + which was not conforming. This _Rb_tree_impl class is also + specialized on whether the _Compare parameter is a POD type or + not. If so, then it maintains the comparison function as a data + member, otherwise it makes the _Compare parameter a base class of + itself. Also, _M_key_compare is now a function instead of a data + member, so that the above trick can work properly. Delegated the + initialization of the other data members to this newly created + class. Also, now other member functions of rb_tree must refer to + _M_key_compare as _M_impl._M_key_compare(). The other data members + (*) can be referenced to as _M_impl.(*), where + (*) includes _M_header, and _M_node_count. + +2004-03-25 Paolo Carlini + + * include/ext/mt_allocator.h (__mt_alloc<>::tune): + Add _M_min_bin, the size in bytes of the smallest bin. + (__mt_alloc<>::tune()): Tweak accordingly. + (__mt_alloc<>::tune(size_t, ...)): Likewise. + (__mt_alloc<>::block_record): Change to a union: members next + and thread_id are never used at the same time. + (__mt_alloc<>::allocate): Update consistently. + (__mt_alloc<>::deallocate): Likewise. + (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and + _S_bin_size for the configurable _M_min_size. + +2004-03-25 Dhruv Matani + + * include/bits/stl_list.h: Created a _List_impl class and made it + derive from the allocator, instead of the list deriving from the + allocator class, which was not conformant. Changed all references + from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same + as above (changed all references to the concerned variables). + +2004-03-25 Dhruv Matani + + * include/bits/stl_deque.h: Created a _Deque_impl class and made + it derive from the allocator, instead of the deque deriving from + the allocator class, which was not conformant. Changed all + references to the _M_start, _M_finish, _M_map, and _M_map_size to + _M_impl.*. + (_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this-> + qualification in 2 places where it was missing. + (_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as + above. + * include/bits/deque.tcc: Same as above (changed all references to + the concerned variables). + +2004-03-25 Dhruv Matani + + * include/bits/stl_vector.h: Created a _Vector_impl class and made + it derive from the allocator, instead of the _Vector_base class, + deriving from the allocator which was not conformant. Changed all + references to the _M_start, _M_finish, and _M_end_of_storage to + _M_impl.*. + * include/bits/vector.tcc: Same as above (changed all references + to the concerned variables). + +2004-03-25 Dhruv Matani + + * testsuite/23_containers/deque/cons/clear_allocator.cc: New. + * testsuite/23_containers/list/cons/clear_allocator.cc: New. + * testsuite/23_containers/vector/cons/clear_allocator.cc: New. + +2004-03-24 Dhruv Matani + + * include/ext/malloc_allocator.h: Fixed the construct function to + call global placement new instead of assignment. Added a check + after the return from malloc to check whether returned pointer is + NULL, and if so, throw std::bad_alloc(). + * include/ext/debug_allocator.h: Added a check in the deallocate + function to check whether the user has passed a NULL pointer or + not. + +2004-03-24 Benjamin Kosnik + + * docs/html/20_util/allocator.html: Add bitmap_allocator links. + +2004-03-24 Andreas Schwab + + * testsuite/lib/prune.exp (prune_g++_output): Ignore errata + warning from IA64 assembler. + +2004-03-24 Dhruv Matani + + * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this + function call __builtin_ctz instead of the while loop. + (allocate) -> If condition has __builtin_expect. + (deallocate) -> Ditto. + Renamed a few left-over variables and typedefs according to the + C++STYLE mentioned in the documentation. + Protected calls to __gthread* by __gthread_active_p(), whose value + is cached in the local variable __threads_active. + +2004-03-24 Felix Yen + + * testsuite/performance/20_util/allocator/producer_consumer.cc: + Use linear algorithm for producer. + +2004-03-24 Paolo Carlini + + * include/ext/mt_allocator.h (__mt_alloc<>::allocate, + __mt_alloc<>::deallocate): Avoid redundant conditionals. + +2004-03-23 Benjamin Kosnik + + * include/bits/locale_facets.h: Tweaks for 80 column. + (__numpunct_cache::_M_cache): Move to locale_facets.tcc. + (__moneypunct_cache::_M_cache): Same. + (num_get): Don't inherit from __num_base. + (num_put): Same. + (money_get): Don't inherit from money_base. + (money_put): Same. + (__timepunct::_M_am_pm_format): New. + (time_get::_M_extract_num): Return iterator, use ios_base as argument. + (time_get::_M_extract_name): Same. + (time_get::_M_extract_via_format): Same. + * include/bits/locale_facets.tcc: Tweaks for 80 column. + Use _M_getloc instead of getloc. + * testsuite/22_locale/money_put/put/char/9780-3.cc: New. + * testsuite/22_locale/num_put/put/char/9780-2.cc: New. + * testsuite/22_locale/time_put/put/char/9780-1.cc: New. + +2004-03-22 Paolo Carlini + + * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator. + * configure: Regenerate. + * config/allocator/pool_allocator_base.h: New. + * include/ext/pool_allocator.h: Convert to a standard-conforming + allocator. + * src/allocator.cc: Tweak instantiations. + * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc. + * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto. + * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto. + * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto. + * testsuite/performance/20_util/allocator/map_thread.cc: Ditto. + * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto. + +2004-03-22 Hans-Peter Nilsson + + * config/cpu/cris/atomicity.h (__atomic_add): Remove "static + inline" and attribute-unused. Qualify parameter __mem with + "volatile". + (__exchange_and_add): Ditto. Add back memory clobber to asm. + +2004-03-20 Paolo Carlini + + * testsuite/27_io/basic_istream/extractors_arithmetic/char/2.cc: + Remove junk. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/3.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/6.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/7.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/8.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/9.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc: + Likewise. + +2004-03-20 Paolo Carlini + + * include/std/std_valarray.h: Document DR389 [Ready]. + * docs/html/ext/howto.html: Add an entry for DR389. + +2004-03-19 Michael Eager + + * config/cpu/mips/atomicity.h: Prevent reg loads between LL and + SC instructions. + +2004-03-19 Paolo Carlini + + * testsuite/22_locale/num_get/get/char/11.cc: Remove redundant + static_cast-s. + * testsuite/22_locale/num_get/get/char/12.cc: Likewise. + * testsuite/22_locale/num_get/get/char/13.cc: Likewise. + * testsuite/22_locale/num_get/get/char/14.cc: Likewise. + * testsuite/22_locale/num_get/get/char/15.cc: Likewise. + * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise. + * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise. + * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise. + * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise. + * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise. + +2004-03-19 Paolo Carlini + Petur Runolfsson + + PR libstdc++/12077 + * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's + no way to find out the conversion used by the underlying FILE*. + * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New. + * testsuite/27_io/objects/char/9.cc: Tweak. + +2004-03-19 Paolo Carlini + + PR libstdc++/14648 + * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix + memory allocation/deallocation calls. + * testsuite/ext/14648.cc: New. + +2004-03-19 Peter Schmid + + PR libstdc++/14647 + * include/backward/bvector.h (bit_vector): Allocator is in std + namespace. + +2004-03-19 Phil Edwards + + * acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT): Set LIBICONV, + not libiconv. SUBST this variable as well. + * testsuite/Makefile.am (site.exp): New target, based on that + created by automake. Also set libiconv. + + * configure, Makefile.in, include/Makefile.in, libmath/Makefile.in, + libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in, + testsuite/Makefile.in: Regenerate. + +2004-03-16 Benjamin Kosnik + + * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is + new_allocator for all hosts. + * configure: Regenerate. + +2004-03-16 Paolo Carlini + + * testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers. + * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise. + +2004-03-15 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get<>::_M_extract): + Adjust the logic underlying the parsing of symbol to deal + correctly with an optional sign component (i.e., when either + negative_sign or positive_sign is empty) + * testsuite/22_locale/money_get/get/char/19.cc: New. + * testsuite/22_locale/money_get/get/wchar_t/19.cc: New. + +2004-03-15 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get<>::_M_extract): + Do not accept an incomplete currency symbol. + * testsuite/22_locale/money_get/get/char/18.cc: New. + * testsuite/22_locale/money_get/get/wchar_t/18.cc: New. + +2004-03-13 Benjamin Kosnik + + * config/allocator: New. + * config/allocator/bitmap_allocator_base.h: New. + * config/allocator/malloc_allocator_base.h: New. + * config/allocator/mt_allocator_base.h: New. + * config/allocator/new_allocator_base.h: New. + * include/bits/allocator.h: Include c++allocator.h. + * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New. + * aclocal.m4: Regenerate. + * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR. + * configure: Regenerate. + * include/Makefile.am (host_headers_extra): Add c++allocator.h. + * include/Makefile.in: Regenerate. + * docs/html/configopts.html: Add enable-libstdcxx-allocator. + +2004-03-12 Benjamin Kosnik + + * include/bits/allocator.h: Revert. + +2004-03-12 Paolo Carlini + + * docs/html/ext/howto.html: Add entry for DR 253 [Ready]. + * include/bits/gslice_array.h: Add comment about DR 253. + * include/bits/indirect_array.h: Likewise. + * include/bits/mask_array.h: Likewise. + * include/bits/slice_array.h: Likewise. + +2004-03-12 Benjamin Kosnik + + * testsuite/20_util/allocator/14176.cc: New. + * include/ext/mt_allocator.h: Formatting fixes. + +2004-03-11 Dhruv Matani + + * include/Makefile.am (ext_headers): Add + ${ext_srcdir}/bitmap_allocator.h . + * include/Makefile.in: Regenerate. + * docs/html/ext/ballocator_doc.txt: New file. + * include/ext/bitmap_allocator.h: New file. + * testsuite/performance/20_util/allocator/list_sort_search.cc: Add + test. + * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. + * testsuite/performance/20_util/allocator/producer_consumer.cc: Add + test for the bitmap_allocator<>. + * testsuite/performance/20_util/allocator/insert.cc: Likewise. + * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise. + * testsuite/performance/20_util/allocator/map_thread.cc: Likewise. + +2004-03-11 Paolo Carlini + + * include/std/std_complex.h (pow(const complex&, const _Tp&), + pow(const _Tp&, const complex&), pow(const complex&, + const complex&)): Fully qualify with std:: a few calls. + * testsuite/26_numerics/complex/13450.cc: Minor tweak. + +2004-03-11 Steven Bosscher + + PR libstdc++/11706 + * include/c_std/cmath.tcc (__cmath_power): Define inline. + +2004-03-10 Kelley Cook + + * configure.ac: Bump AC_PREREQ to 2.59. + +2004-03-10 Paolo Carlini + + * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos. + +2004-03-10 Paul Kienzle + Paolo Carlini + + PR libstdc++/13450 + * include/std/std_complex.h (pow(const complex&, const _Tp&), + pow(const _Tp&, const complex&)): Use cmath pow only when safe. + * testsuite/26_numerics/complex/13450.cc: New. + + * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc. + * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix. + +2004-03-10 Jerry Quinn + + PR libstdc++/3247 + * include/bits/gslice_array.h (gslice_array()): Make public. + (operator=(gslice_array)): Make public. Implement. + * include/bits/indirect_array.h (indirect_array()): Make public. + * include/bits/mask_array.h (mask_array()): Make public. + (operator=(mask_array)): Make public. Implement. + * include/bits/valarray_array.tcc (__valarray_copy): + Comment. Add versions for gslice_array and mask_array. + * testsuite/26_numerics/valarray_subset_assignment.cc: New test. + +2004-03-09 Benjamin Kosnik + + * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for + non-weak systems. + * testsuite/23_containers/vector/modifiers/swap.cc: Same. + * testsuite/23_containers/set/modifiers/swap.cc: Same. + * testsuite/23_containers/multiset/modifiers/swap.cc: Same. + * testsuite/23_containers/multimap/modifiers/swap.cc: Same. + * testsuite/23_containers/map/modifiers/swap.cc: Same. + * testsuite/23_containers/list/modifiers/swap.cc: Same. + + * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions. + +2004-03-08 Benjamin Kosnik + + PR c++/13658 + * testsuite/23_containers/deque/modifiers/swap.cc: New. + * testsuite/23_containers/list/modifiers/swap.cc: New. + * testsuite/23_containers/map/modifiers/swap.cc: New. + * testsuite/23_containers/multimap/modifiers/swap.cc: New. + * testsuite/23_containers/multiset/modifiers/swap.cc: New. + * testsuite/23_containers/set/modifiers/swap.cc: New. + * testsuite/23_containers/vector/modifiers/swap.cc: New. + +2004-03-08 Petur Runolfsson + + PR libstdc++/12658 + * testsuite/22_locale/locale/cons/12658_thread.cc: New. + +2004-03-08 Paolo Carlini + + * docs/html/ext/howto.html: Add entry for DR 103 [WP]. + * include/bits/stl_multiset.h: Add comment about DR 103. + * include/bits/stl_set.h: Likewise. + +2004-03-08 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get<>::_M_extract): + The value _space_ indicates that at least one space is required + at that position. + * testsuite/22_locale/money_get/get/char/17.cc: New. + * testsuite/22_locale/money_get/get/wchar_t/17.cc: New. + + * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks. + * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise. + + * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)): + Remove redundant conditional on __str.size(). + +2004-03-08 Benjamin Kosnik + + * include/bits/allocator.h: Switch defaults to mt_alloc. + +2004-03-06 Benjamin Kosnik + + * include/ext/mt_allocator.h (_S_initialize): If + !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex. + +2004-03-06 Benjamin Kosnik + + PR libstdc++/12658 + * src/locale_init.cc (locale::locale): Lock critical regions with + external mutexes. + (locale::global): Same. + * include/bits/concurrence.h (__glibcxx_mutex_define_initialized): + Add in once bits for cases without __GTHREAD_MUTEX_INIT. + (__glibcxx_mutex_lock): Same. + + * config/cpu/generic/atomicity.h: Remove + _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h. + * src/misc-inst.cc: Move all locking bits out of this file. + + * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK. + * src/misc-inst.cc: Same. + * config/cpu/hppa/atomicity.h: Same. + + * config/linker-map.gnu: Remove types in the signature of atomic + exports, as they may vary. + +2004-03-06 Paolo Carlini + + * include/bits/locale_facets.tcc: Tweak the comment preceding + has_facet: doesn't throw. + +2004-03-06 Paolo Carlini + + * testsuite/22_locale/money_get/get/char/1.cc: Clean up. + * 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/wchar_t/1.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. + +2004-03-06 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, + num_get<>::_M_extract_int, num_get<>::do_get(bool&), + __pad<>::_S_pad): Prefer plain operator== to traits::eq(). + * testsuite/testsuite_character.h (struct __gnu_test::character): + Provide operator==. + * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char): + Likewise. + +2004-03-05 Paolo Carlini + + * testsuite/27_io/fpos/14320-2.cc: Remove xfail. + +2004-03-04 Benjamin Kosnik + + * testsuite/23_containers/multiset/insert/1.cc: Test result string. + + * testsuite/23_containers/bitset/invalidation/1.cc: Main always + returns 0. + * testsuite/23_containers/deque/invalidation/4.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/map/invalidation/2.cc: Same. + * testsuite/23_containers/multimap/invalidation/1.cc: Same. + * testsuite/23_containers/multimap/invalidation/2.cc: Same. + * testsuite/23_containers/multiset/invalidation/1.cc: Same. + * testsuite/23_containers/multiset/invalidation/2.cc: Same. + * testsuite/23_containers/set/invalidation/1.cc: Same. + * testsuite/23_containers/set/invalidation/2.cc: Same. + * testsuite/23_containers/vector/invalidation/1.cc: Same. + * testsuite/23_containers/vector/invalidation/2.cc: Same. + * testsuite/23_containers/vector/invalidation/3.cc: Same. + * testsuite/23_containers/vector/invalidation/4.cc: Same. + +2004-03-04 Paolo Carlini + + * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to + CXXFLAGS_save. + * testsuite/lib/libstdc++.exp: Don't add it conditionally to + DEFAULT_CXXFLAGS. + * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT" + from the dg-options. + * 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/resize/1.cc: Likewise. + * testsuite/26_numerics/complex_value.cc: Likewise. + * testsuite/27_io/ios_base/storage/1.cc: Likewise. + * testsuite/27_io/ios_base/storage/2.cc: Likewise. + * testsuite/27_io/ios_base/storage/3.cc: Likewise. + * testsuite/27_io/manipulators/standard/char/2.cc: Likewise. + * testsuite/27_io/objects/char/5.cc: Likewise. + * testsuite/27_io/objects/wchar_t/5.cc: Likewise. + * testsuite/backward/11460.cc: Likewise. + * testsuite/thread/pthread7-rope.cc: Likewise. + + * testsuite/21_strings/basic_string/compare/char/1.cc: Add + missing test variable. + * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add + missing test variable. + +2004-03-04 Benjamin Kosnik + + * testsuite/20_util/allocator/1.cc: Provide explicit + instantiations for non-weak systems. + * testsuite/20_util/binders.cc: Same. + * testsuite/20_util/allocator/8230.cc: Same. + * testsuite/20_util/allocator/10378.cc: Same. + * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same. + * testsuite/22_locale/ctype/is/char/2.cc: Same. + * testsuite/thread/pthread7-rope.cc: Same. + * testsuite/thread/pthread6.cc: Same. + * testsuite/thread/pthread5.cc: Same. + * testsuite/thread/pthread4.cc: Same. + * testsuite/thread/pthread1.cc: Same. + * testsuite/ext/rope.cc: Same. + * testsuite/ext/hash_set.cc: Same. + * testsuite/ext/hash_map.cc: Same. + * testsuite/ext/concept_checks.cc: Same. + * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same. + * testsuite/25_algorithms/unique/2.cc: Same. + * testsuite/25_algorithms/unique/1.cc: Same. + * testsuite/25_algorithms/rotate.cc: Same. + * testsuite/25_algorithms/min_max.cc: Same. + * testsuite/25_algorithms/equal.cc: Same. + * testsuite/24_iterators/rel_ops.cc: Same. + * testsuite/24_iterators/iterator.cc: Same. + * testsuite/24_iterators/insert_iterator.cc: Same. + * testsuite/24_iterators/front_insert_iterator.cc: Same. + * testsuite/24_iterators/back_insert_iterator.cc: Same. + * testsuite/23_containers/vector/resize/1.cc: Same. + * testsuite/23_containers/vector/modifiers/2.cc: Same. + * testsuite/23_containers/vector/modifiers/1.cc: Same. + * testsuite/23_containers/vector/invalidation/4.cc: Same. + * testsuite/23_containers/vector/invalidation/3.cc: Same. + * testsuite/23_containers/vector/invalidation/2.cc: Same. + * testsuite/23_containers/vector/invalidation/1.cc: Same. + * testsuite/23_containers/vector/element_access/1.cc: Same. + * testsuite/23_containers/vector/cons/6513.cc: Same. + * testsuite/23_containers/vector/cons/3.cc: Same. + * testsuite/23_containers/vector/cons/2.cc: Same. + * testsuite/23_containers/vector/cons/1.cc: Same. + * testsuite/23_containers/vector/capacity/8230.cc: Same. + * testsuite/23_containers/vector/capacity/1.cc: Same. + * testsuite/23_containers/vector/bool/6886.cc: Same. + * testsuite/23_containers/stack/members/7158.cc: Same. + * testsuite/23_containers/set/invalidation/2.cc: Same. + * testsuite/23_containers/set/invalidation/1.cc: Same. + * testsuite/23_containers/queue/members/7157.cc: Same. + * testsuite/23_containers/priority_queue/members/7161.cc: Same. + * testsuite/23_containers/multiset/invalidation/2.cc: Same. + * testsuite/23_containers/multiset/invalidation/2.cc: Same. + * testsuite/23_containers/multiset/insert/1.cc: Same. + * testsuite/23_containers/multimap/invalidation/2.cc: Same. + * testsuite/23_containers/multimap/invalidation/2.cc: Same. + * testsuite/23_containers/map/operators/1.cc: Same. + * testsuite/23_containers/map/invalidation/2.cc: Same. + * testsuite/23_containers/map/invalidation/1.cc: Same. + * testsuite/23_containers/map/insert/1.cc: Same. + * testsuite/23_containers/list/operators/4.cc: Same. + * testsuite/23_containers/list/operators/3.cc: Same. + * testsuite/23_containers/list/operators/2.cc: Same. + * testsuite/23_containers/list/operators/1.cc: Same. + * testsuite/23_containers/list/modifiers/3.cc: Same. + * testsuite/23_containers/list/modifiers/2.cc: Same. + * testsuite/23_containers/list/modifiers/1.cc: Same. + * testsuite/23_containers/list/invalidation/4.cc: Same. + * testsuite/23_containers/list/invalidation/3.cc: Same. + * testsuite/23_containers/list/invalidation/2.cc: Same. + * testsuite/23_containers/list/invalidation/1.cc: Same. + * testsuite/23_containers/list/cons/9.cc: Same. + * testsuite/23_containers/list/cons/8.cc: Same. + * testsuite/23_containers/list/cons/7.cc: Same. + * testsuite/23_containers/list/cons/6.cc: Same. + * testsuite/23_containers/list/cons/5.cc: Same. + * testsuite/23_containers/list/cons/4.cc: Same. + * testsuite/23_containers/list/cons/3.cc: Same. + * testsuite/23_containers/list/cons/2.cc: Same. + * testsuite/23_containers/list/cons/1.cc: Same. + * testsuite/23_containers/list/capacity/1.cc: Same. + * testsuite/23_containers/deque/operators/1.cc: Same. + * testsuite/23_containers/deque/invalidation/4.cc: Same. + * testsuite/23_containers/deque/invalidation/3.cc: Same. + * testsuite/23_containers/deque/invalidation/2.cc: Same. + * testsuite/23_containers/deque/invalidation/1.cc: Same. + * testsuite/23_containers/deque/cons/2.cc: Same. + * testsuite/23_containers/deque/cons/1.cc: Same. + + * src/allocator.cc: Add char, wchar_t instantiations + to match extern template declarations in memory.h. + +2004-03-03 Paolo Carlini + + * include/bits/locale_facets.tcc (money_put<>::_M_insert): + Fix warning regression. + +2004-03-03 Paolo Carlini + + * include/bits/locale_facets.tcc (money_put<>::_M_insert): + Deal properly with empty __digits and negative frac_digits, + clean-up a bit. + +2004-03-03 Jonathan Wakely + + * docs/html/documentation.html: Regenerate. + +2004-03-02 Paolo Carlini + + PR libstdc++/14320 + * include/bits/postypes.h (class streamoff): Remove, now + streamoff is just typedef a 64 bit signed integer type. + (class fpos): Tweak consistently. + * testsuite/27_io/fpos/14320-1.cc: New. + * testsuite/27_io/fpos/14320-2.cc: New. + * testsuite/27_io/fpos/14320-3.cc: New. + * testsuite/27_io/fpos/14320-4.cc: New. + * testsuite/27_io/fpos/14320-5.cc: New. + * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now. + +2004-03-02 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get<>::_M_extract): + Reorganize a bit the main parsing loop, thus early detecting + an empty value component. + * testsuite/22_locale/money_get/get/char/16.cc: New. + * testsuite/22_locale/money_get/get/wchar_t/16.cc: New. + +2004-03-02 Benjamin Kosnik + + Support automake 1.8.2 + * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override. + * po/Makefile.am (EXTRA_DIST): New. + * po/Makefile.in: Regenerate. + * Makefile.in: Same. + * include/Makefile.in: Same. + * libmath/Makefile.in: Same. + * libsupc++/Makefile.in: Same. + * src/Makefile.in: Same. + * testsuite/Makefile.in: Same. + + * include/Makefile.am (${host_builddir}/gthr-posix.h): Use + __GXX_WEAK__ instead of SUPPORTS_WEAK. + (${host_builddir}/gthr-default.h): Same. + (${host_builddir}/gthr.h): Same. + * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove + _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via + -fno-weak. + * aclocal.m4: Regenerate. + * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK. + * config.h.in: Regenerate. + * configure: Same. + +2004-03-01 Benjamin Kosnik + + Support autoconf 2.59 + * acinclude.m4: Quote correctly. + * aclocal.m4: Regenerate. + * linkage.m4: Same. + +2004-03-01 Benjamin Kosnik + + * docs/html/test.html: Add multilib RUNTESTFLAGS example. + + * docs/html/18_support/howto.html: Add bit about writing to + stderr, mostly by Zack. + +2004-03-01 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get<>::_M_extract, + money_get<>::do_get(string_type&)): ... and two more. + +2004-03-01 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get<>::_M_extract): + Fix thinkos in the switch from string_type& to string& as last + argument. + +2004-03-01 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): + Also when parsing exponent sign, first look for thousands_sep + and decimal_point; tweak a bit. + * testsuite/22_locale/num_get/get/char/15.cc: New. + * testsuite/22_locale/num_get/get/wchar_t/15.cc: New. + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, + num_get<>::_M_extract_int): Reorder some conditionals. + +2004-03-01 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get<>::_M_extract): + Consistently with numpunct, enforce the requirements in + 22.2.6.3, p3 for the thousands separators; tweak a bit. + * testsuite/22_locale/money_get/get/char/15.cc: New. + * testsuite/22_locale/money_get/get/wchar_t/15.cc: New. + +2004-03-01 David Billinghurst + + * testsuite/lib/libstdc++.exp (v3-list-tests): Use + testsuite_files from correct multilib blddir when running + testsuite. + +2004-02-29 Phil Edwards + + * testsuite/Makefile.am (check-abi, check-abi-verbose): Copy + the summary file to the logfile. + * testsuite/Makefile.in: Regenerate. + +2004-02-28 John David Anglin + + * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument + volatile. + * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use + __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK. + +2004-02-28 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): + According to 22.2.3.1, p2, 'units' may be followed by 'e' with + no 'decimal-point' in the middle: in this case too we must fix + up __found_grouping; slightly tweak. + * testsuite/22_locale/num_get/get/char/14.cc: New. + * testsuite/22_locale/num_get/get/wchar_t/14.cc: New. + +2004-02-27 Eric Christopher + Phil Edwards + + * 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: + Use dg-require-iconv. + * testsuite/lib/libstdc++.exp: Load target-supports.exp. + +2004-02-27 Phil Edwards + Eric Christopher + + * testsuite/config/default.exp: Update with comments. + (${tool}_target_compile): New wrapper routine. + * testsuite/lib/dg-options.exp: New file, with dg-require-iconv. + * testsuite/lib/libstdc++.exp: Update with comments and cosmetic + fixes. + (load_gcc_lib, v3track): New routines. + (v3-init): Rename to libstdc++_init. + * testsuite/libstdc++-dg/normal.exp: No longer call v3-init. + Move DEFAULT_CXXFLAGS handling into libstdc++_init. + +2004-02-27 Benjamin Kosnik + + * config/cpu/hppa/atomicity.h: Include c++config.h to get defines. + + * src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx. + + * config/os/irix/irix5.2/atomicity.h: Merge.. + * config/os/irix/irix6.5/atomicity.h: Merge.. + * config/os/irix/atomicity.h: ...into this. + * config/os/irix/atomic_word.h: New. + * configure.host: Set atomic_word_dir for irix. + + * hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock. + * i386/atomicity.h: Same. + * m68k/atomicity.h: Same. + * sparc/atomicity.h: Same. + +2004-02-27 David Edelsohn + + * config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove + static, and inline keywords. + +2004-02-27 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, + num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate, + call reserve on the __tmp_gruping string. + (num_get<>::_M_extract_float): Don't append unnecessarily a + char() to the returned string. + * include/bits/locale_facets.tcc: Trivial reformattings. + +2004-02-27 Paolo Carlini + + * include/bits/locale_facets.h (money_get<>::_M_extract): + Change signature: now takes a plain string&. + * include/bits/locale_facets.tcc (money_get<>::_M_extract): + Update consistently the definition; use the moneypunct cache + to parse the value; use swap to change __units. + (money_get<>::do_get(long double&)): Update call of _M_extract, + avoid ctype::narrow, not correct wrt the standard. + (money_get<>::do_get(string_type&)): Likewise, update call + of _M_extract, use ctype::widen. + * src/locale-inst.cc: Tweak instantiations of _M_extract. + +2004-02-26 Ian Lance Taylor + + * testsuite/demangle/abi_examples/01.cc: Expect error -2. + * testsuite/demangle/abi_examples/02.cc: Likewise. + * testsuite/demangle/regression/cw-11.cc: Likewise. + * testsuite/demangle/regression/cw-16.cc: Change two expected + results to match libiberty demangler output. + +2004-02-26 Benjamin Kosnik + + PR libstdc++/10246 + * libsupc++/Makefile.am: Use libiberty demangler. + (c_sources): Add cp-demangle.c. + * libsupc++/Makefile.in: Regenerate. + * src/Makefile.am (sources): Remove demangle.cc. + * src/Makefile.in: Regenerate. + * include/Makefile.am (bits_headers): Move demangle.h. + (ext_headers): ...here. + * include/Makefile.in: Regenerate. + * include/bits/demangle.h: Move... + * include/ext/demangle.h: ...here. + * src/demangle.cc: Remove. + +2004-02-26 Benjamin Kosnik + + * include/bits/demangle.h: Add type template parameter to all + templates with just an Allocator template parameter. + +2004-02-25 Benjamin Kosnik + + * include/bits/atomicity.h: New, forward declarations for __atomic_add + and __exchange_and_add. + * config/cpu/generic/atomic_word.h: New, typdef for atomic word. + * config/cpu/cris/atomic_word.h: Same. + * config/cpu/sparc/atomic_word.h: Same. + * include/bits/ios_base.h (_Callback_list::_M_remove_reference): + Qualifiy with __gnu_cxx. + (_Callback_list::_M_add_reference): Same. + * include/bits/locale_classes.h (locale::facet::_M_add_reference): Add. + (locale::facet::_M_remove_reference): Same. + (locale::_Impl::_M_add_reference): Add. + (locale::_Impl::_M_remove_reference): Same. + * include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same. + (basic_string::_Rep::_M_dispose): Same. + * src/ios.cc (ios_base::xalloc): Same. + * src/ios_init.cc (ios_base::Init::Init): Same. + (ios_base::Init::~Init): Same. + * src/locale.cc (locale::id::_M_id): Same. + * config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove + static, and inline keywords. + * config/cpu/alpha/atomicity.h: Same. + * config/cpu/cris/atomicity.h: Same. + * config/cpu/generic/atomicity.h: Same. + * config/cpu/hppa/atomicity.h: Same. + * config/cpu/i386/atomicity.h: Same. + * config/cpu/ia64/atomicity.h: Same. + * config/cpu/m68k/atomicity.h: Same. + * config/cpu/mips/atomicity.h: Same. + * config/cpu/powerpc/atomicity.h: Same. + * config/cpu/s390/atomicity.h: Same. + * config/cpu/sparc/atomicity.h: Same. + + * src/Makefile.am (host_sources): Add atomicity.cc. + (atomicity.cc): New rule. + * src/Makefile.in: Regenerate. + * include/Makefile.am (host_headers): Remove host atomicity.h. + (host_headers): Add atomic_word.h. + (bits_headers): Add bits atomicity.h. + Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR. + * include/Makefile.in: Regenerate. + * configure.host (atomic_word_dir): Add. + * configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change + ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR. + * configure: Regenerate. + * config/linker-map.gnu: Export __exchange_and_add, and __atomic_add. + + * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers. + * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. + +2004-02-25 Jonathan Wakely + + * docs/html/20_util/howto.html, docs/html/20_util/allocator.html, + docs/html/ext/howto.html, docs/html/ext/mt_allocator.html: + Fix markup, more tags. + +2004-02-25 Carlo Wood + + * bits/demangle.h + namespace __gnu_cxx::demangler + (session::qualifier_list_Allocator): Add + (session::M_qualifier_list_alloc): Add + (session::decode_type_with_postfix): + Use M_qualifier_list_alloc instead of calling operator new/delete. + +2004-02-24 Paolo Carlini + + PR libstdc++/14252 + * include/bits/postypes.h (class streamoff): Add operator++(), + operator++(int), operator--() and operator--(int). + * testsuite/27_io/fpos/14252.cc: New. + +2004-02-24 Richard Sandiford + + * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds + error in handling of hex constants. + +2004-02-24 Paolo Carlini + + * include/bits/locale_facets.tcc (money_put<>::_M_insert): + Prefer basic_string::append to operator+= and a temporary. + +2004-02-23 Benjamin Kosnik + + * libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler): + Only use fputs, not write. + +2004-02-23 Benjamin Kosnik + + * include/ext/malloc_allocator.h: Add operators ==, !=. + * include/ext/new_allocator.h: Add operators ==, !=. + * include/ext/mt_allocator.h (__mt_alloc::tune): New. + (__mt_alloc::_S_get_options): New. + (__mt_alloc::_S_set_options): New. + (__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key. + (__mt_alloc::_S_no_of_bins): To _S_bin_size. + Move functions out of line, simplify, format. + * src/allocator.cc: Simplify explicit instantiations. + * include/bits/allocator.h: Tweak. + +2004-02-22 Paolo Carlini + + * include/bits/locale_facets.tcc (money_put<>::_M_insert): + Restructure formatting of value component, first dealing with + the non-decimal digits; use reserve. + +2004-02-22 Paolo Carlini + + * include/bits/locale_facets.h (class money_get): Inherit + from money_base too; tweak declaration of _M_extract, now + parameterized on _Intl too. + * include/bits/locale_facets.tcc (money_get<>::_M_extract): + Update definition to use the cache; call reserve on __res to + avoid multiple reallocations; fix parsing of sign component + according to 22.2.6.1.2, p3. + (money_get<>::do_get(long double&), + money_get<>::do_get(string_type&)): Update calls of _M_extract. + * src/locale-inst.cc: Add instantiations of + money_get::_M_extract and money_get::_M_extract. + * testsuite/22_locale/money_get/get/char/14.cc: New. + * testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto. + +2004-02-21 Mark Mitchell + + * libsupc++/vterminate.cc + (__gnu_cxx::__verbose_terminate_handler): Guard against recursive + calls to terminate. + * src/demangle.cc (__cxa_demangle): Wrap in try-catch block. + + * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do + not set RLIMIT_AS on HP-UX. + +2004-02-21 Mark Mitchell + + * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do + not set RLIMIT_AS on HP-UX. + +2004-02-21 Paolo Carlini + + * include/bits/locale_facets.h (class money_base): Add { _S_minus, + _S_zero, _S_end } enum, _S_atoms. + (struct __moneypunct_cache<>): Parameterize on _Intl too; add + _M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size, + _M_negative_sign_size, _M_atoms; tweak constructor consistently. + (__moneypunct_cache<>::~__moneypunct_cache): Update. + (__moneypunct_cache<>::_M_cache): Fill the cache. + (class moneypunct): Tweak __cache_type typedef. + (class money_put): Inherit from money_base too; tweak declaration + of _M_insert, now parameterized on _Intl. + * include/bits/locale_facets.tcc + (struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New. + (money_put<>::_M_insert): Update definition to use the cache; + call reserve on __res to avoid multiple reallocations. + (money_put<>::do_put(long double), + money_put<>::do_put(const string_type&): Update calls of _M_insert. + * config/locale/generic/monetary_members.cc + (moneypunct::_M_initialize_moneypunct, + moneypunct::_M_initialize_moneypunct, + moneypunct::_M_initialize_moneypunct, + moneypunct::_M_initialize_moneypunct): Update. + * config/locale/gnu/monetary_members.cc: Likewise. + * config/locale/gnu/monetary_members.cc + (moneypunct::~moneypunct(), + moneypunct::~moneypunct()): Likewise. + * src/globals_locale.cc: Tweak fake_money_cache_c. + * src/locale-inst.cc: Add instantiations for + money_put::_M_insert and money_put::_M_insert and + __moneypunct_cache, __moneypunct_cache. + * src/locale_facets.cc: Define money_base::_S_atoms. + * src/locale_init.cc: Update placement new of + __moneypunct_cache, __moneypunct_cache, + __moneypunct_cache, __moneypunct_cache. + + * config/locale/generic/numeric_members.cc: Clean up. + * config/locale/gnu/numeric_members.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/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. + +2004-02-20 Mark Mitchell + + * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open + FIFO for writing with ios_base::in|ios_base::out. + * 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: Open FIFO for writing + with "r+". + +2004-02-19 David Edelsohn + + * 22_locale/collate/compare/wchar_t/2.cc: Change input-charset + from iso-8859-1 to ISO8859-1. + * 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same. + * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same. + * 22_locale/collate/hash/wchar_t/2.cc: Same. + * 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same. + * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same. + * 22_locale/collate/transform/wchar_t/2.cc: Same. + * 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same. + * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same. + +2004-02-18 Paolo Carlini + + * include/bits/locale_facets.h (money_get<>::_M_extract): + New, helper for do_get. + (money_put<>::_M_insert): Likewise, for do_put. + * include/bits/locale_facets.tcc (money_get<>::_M_extract, + money_put<>::_M_insert): Define. + (money_get<>::do_get(long double&), money_get<>::do_get( + string_type&), money_put::do_put(long double), + money_put::do_put(const string_type&)): Use the helpers. + +2004-02-18 Paolo Carlini + + * config/io/basic_file_stdio.cc (__gnu_internal::xwritev): + Rewrite, avoiding recursion. + (__gnu_internal::xwrite): Minor tweaks. + +2004-02-17 Stefan Olsson + + * include/ext/mt_allocator.h: Removed the last + pointer. Deallocated blocks are now added to the front of + freelists as proposed by Felix Yen. This gives roughly 10% + performance boost and saves some memory. + * docs/html/ext/mt_allocator.html: Change due to that deallocated + blocks now are added to the front of freelists. The reason to this + approach is also explained. + +2004-02-17 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, + num_get<>::_M_extract_int, money_get<>::do_get): Simplify + grouping fidelity conditional. + +2004-02-16 Paolo Carlini + + * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: + Qualify exception with std::. + * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto. + * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto. + * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. + * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. + +2004-02-16 Paolo Carlini + + * testsuite/ext/enc_filebuf/char/13189.cc: Don't check + for now that the catch block is not reached. + * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise. + +2004-02-16 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get::do_get(string_type&)): + Fix parsing of the remaining sign characters. + * 22_locale/money_get/get/char/2.cc: Tweak: now, correctly, + the input is scanned 'til eof. + * 22_locale/money_get/get/char/4.cc: Likewise. + * 22_locale/money_get/get/wchar_t/2.cc: Likewise. + * 22_locale/money_get/get/wchar_t/4.cc: Likewise. + * 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format, + not do_pos_format: the former is the only one that matters during + input. + * 22_locale/money_get/get/wchar_t/8.cc: Likewise. + + * 22_locale/money_get/get/char/6.cc: Minor tweak. + * 22_locale/money_get/get/wchar_t/6.cc: Likewise. + +2004-02-15 David Asher + + PR libstdc++/11352 + * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't + access __olds beyond __oldlen. + +2004-02-14 Paolo Carlini + + * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make + sure the exception is actually thrown. + * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. + * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. + +2004-02-14 Paolo Carlini + + PR libstdc++/13858 + * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external): + In case of conversion errors, throw ios_failure; simplify. + * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New. + * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto. + * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak, + previously we didn't throw in case of conversion errors, instead + just returned eof(). + * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. + * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. + * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. + + * include/bits/fstream.tcc (basic_filebuf<>::overflow): + Trivial simplification of a conditional. + +2004-02-12 Paolo Carlini + + PR libstdc++/13731 (final part: writev) + * config/io/basic_file_stdio.cc (__gnu_internal::xwritev): + New, a wrapper around writev() handling partial writes. + (__basic_file::xwrite): Move to __gnu_internal and make + static. + (__basic_file::xsputn): Update call. + (__basic_file::xsputn_2): Likewise. + * config/io/basic_file_stdio.h (__basic_file::xwrite): + Don't declare, now static. + +2004-02-11 Stefan Olsson + + * docs/html/ext/mt_allocator.html: New. + +2004-02-11 Benjamin Kosnik + + * docs/html/20_util/allocator.html: New file, consolidate + allocator information here. Revamp. + * docs/html/documentation.html: Change links. + * docs/html/20_util/howto.html: Same. + * docs/html/ext/howto.html: Same. + +2004-02-11 Paolo Carlini + + PR libstdc++/13731 (first part: write) + * config/io/basic_file_stdio.h (__basic_file::xwrite): + New, declare. + * config/io/basic_file_stdio.cc (__basic_file::xwrite): + Define it: a wrapper around write() handling partial write. + (__basic_file::xsputn): Use it. + (__basic_file::xsputn_2): Likewise. + +2004-02-11 Paolo Carlini + Petur Runolfsson + + PR libstdc++/14078 + * include/std/std_istream.h (operator>>(__istream_type& (*) + (__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)), + operator>>(ios_base& (*)(ios_base&))): Declare inline. + * include/std/std_ostream.h (operator<<(__ostream_type& (*) + (__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)), + operator<<(ios_base& (*) (ios_base&))): Likewise. + * testsuite/performance/27_io/fmtflags_manipulators.cc: New. + +2004-02-10 Loren J. Rittle + + PR libstdc++/14098 + * config/linker-map.gnu: Add typeinfo and typeinfo name for + __gnu_cxx::stdio_sync_filebuf >. + + PR libstdc++/14097 + * config/linker-map.gnu: Add typeinfo and typeinfo name for + __gnu_cxx::stdio_filebuf >. + +2004-02-09 Loren J. Rittle + + * include/ext/pool_allocator.h: Include c++config.h. + +2004-02-09 Stefan Olsson + + * include/ext/mt_allocator.h: thread_id is unused in non threaded + applications and now has a ifdef to remove it completely on + compilers without thread support. Include stdlib.h due to a + compiler warning on getenv(). + +2004-02-09 Paul Brook + + * libstdc++-v3/configure.host: Explicitly check for atomicity.h file. + +2004-02-09 Paolo Carlini + + PR libstdc++/14071 + * src/locale_init.cc (locale::global(const locale&)): Use + locale::name() in order to decide whether calling setlocale. + * testsuite/22_locale/locale/global_locale_objects/14071.cc: New. + + * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()): + Avoid computing &= unnecessarily. + +2004-02-09 James E Wilson + + PR libstdc++/5625 + * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use + __builtin_extend_pointer. + +2004-02-09 Paolo Carlini + + PR libstdc++/14072 + * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale): + Don't leave dangling pointers. + * testsuite/27_io/basic_ios/imbue/14072.cc: New. + * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put + facet is needed in the final test. + +2004-02-09 Bernardo Innocenti + + * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*. + * configure: Regenerate. + +2004-02-08 Richard Henderson + + PR libstdc++/14026 + * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust + uncaughtExceptions during nested catch rethrow. + * testsuite/18_support/14026.cc: New. + +2004-02-08 Paolo Carlini + + * include/bits/basic_string.tcc (assign(const _CharT*, size_type)): + When working in place remember to set the state to sharable + (otherwise, _M_mutate does it). + +2004-02-08 Bernardo Innocenti + + * include/bits/allocator.h, include/bits/basic_ios.h, + include/bits/basic_ios.tcc, include/bits/basic_string.h, + include/bits/basic_string.tcc, include/bits/boost_concept_check.h, + include/bits/char_traits.h, include/bits/codecvt.h, + include/bits/concurrence.h, include/bits/cpp_type_traits.h, + include/bits/demangle.h, include/bits/deque.tcc, + include/bits/fstream.tcc, include/bits/functexcept.h, + include/bits/gslice.h, include/bits/gslice_array.h, + include/bits/indirect_array.h, include/bits/ios_base.h, + include/bits/istream.tcc, include/bits/list.tcc, + include/bits/locale_classes.h, include/bits/locale_facets.h, + include/bits/locale_facets.tcc, include/bits/localefwd.h, + include/bits/mask_array.h, include/bits/ostream.tcc, + include/bits/postypes.h, include/bits/slice_array.h, + include/bits/sstream.tcc, include/bits/stl_algo.h, + include/bits/stl_algobase.h, include/bits/stl_bvector.h, + include/bits/stl_construct.h, include/bits/stl_deque.h, + include/bits/stl_function.h, include/bits/stl_heap.h, + include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h, + include/bits/stl_list.h, include/bits/stl_map.h, + include/bits/stl_multimap.h, include/bits/stl_multiset.h, + include/bits/stl_numeric.h, include/bits/stl_pair.h, + include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h, + include/bits/stl_relops.h, include/bits/stl_set.h, + include/bits/stl_stack.h, include/bits/stl_tempbuf.h, + include/bits/stl_threads.h, include/bits/stl_tree.h, + include/bits/stl_uninitialized.h, include/bits/stl_vector.h, + include/bits/stream_iterator.h, include/bits/streambuf.tcc, + include/bits/streambuf_iterator.h,include/bits/stringfwd.h, + include/bits/type_traits.h, include/bits/valarray_after.h, + include/bits/valarray_array.h, include/bits/valarray_array.tcc, + include/bits/valarray_before.h, include/bits/vector.tcc: Remove + trailing whitespace. + +2004-02-06 Paolo Carlini + + * include/bits/basic_string.h: Fix comment. + +2004-02-06 Paolo Carlini + + * include/bits/stl_construct.h: Wrap overlong lines, reformat + according to the coding standards. + * include/bits/stl_pair.h: Likewise. + * include/bits/stl_raw_storage_iter.h: Likewise. + * include/bits/stl_stack.h: Likewise. + * include/bits/stl_uninitialized.h: Likewise. + * include/bits/stream_iterator.h: Likewise. + * include/bits/streambuf_iterator.h: Likewise. + * include/bits/type_traits.h: Likewise. + +2004-02-06 Paolo Carlini + + * testsuite/27_io/basic_filebuf/open/char/9507.cc: + Adjust timings. + +2004-02-05 Loren J. Rittle + + * scripts/check_performance: Support PCH. + + * scripts/check_performance (CXX): Add -DNOTHREAD. + * testsuite/performance/20_util/allocator/insert.cc: Integrate + threaded tests from insert_insert.cc. Tweak iterations, + remove special cases. + * testsuite/performance/20_util/allocator/insert_insert.cc: + Make all tests single-threaded. Tweak iterations. + * testsuite/performance/20_util/allocator/map_thread.cc: + Tweak iterations. + * testsuite/performance/20_util/allocator/producer_consumer.cc: + Likewise. + +2004-02-05 Geoffrey Keating + + PR 12179 + * .cvsignore: New. + * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not + 'gcc-lib'. Add comment about poorly-named variables. + * aclocal.m4: Regenerate. + * configure: Regenerate. + +2004-02-05 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get::do_get(string_type&)): + Thousands-sep are always optional; thousands-sep are not allowed + after the decimal_point. + * testsuite/22_locale/money_get/get/char/12.cc: New. + * testsuite/22_locale/money_get/get/char/13.cc: New. + * testsuite/22_locale/money_get/get/wchar_t/12.cc: New. + * testsuite/22_locale/money_get/get/wchar_t/13.cc: New. + + * testsuite/22_locale/money_get/get/char/1.cc: Clean-up. + * 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/wchar_t/1.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/char/9.cc: Fix citation from + the standard. + * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise. + +2004-02-05 Richard Sandiford + + * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T): + Define. + * config/io/basic_file_stdio.cc (__basic_file::showmanyc): Use + it to decide whether FIONREAD should take an off_t or int argument. + +2004-02-05 Paolo Carlini + + * include/bits/stl_function.h: Minor formatting changes. + +2004-02-04 Zack Weinberg + + Revert previous change to config/abi/*/baseline_symbols.txt. + +2004-02-04 Benjamin Kosnik + Zack Weinberg + + * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode): + New function. + (__basic_file::sys_open, __basic_file::open): Use it. + (__basic_file::_M_open_mode): Delete. + * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode. + + * testsuite/27_io/basic_filebuf/close/char/9964.cc + * testsuite/27_io/basic_filebuf/open/char/9507.cc: + Correct flags to filebuf::open calls. + + * config/abi/alpha-freebsd5/baseline_symbols.txt + * config/abi/alpha-linux-gnu/baseline_symbols.txt + * config/abi/hppa-linux-gnu/baseline_symbols.txt + * config/abi/i386-freebsd4/baseline_symbols.txt + * config/abi/i386-freebsd5/baseline_symbols.txt + * config/abi/i486-linux-gnu/baseline_symbols.txt + * config/abi/ia64-linux-gnu/baseline_symbols.txt + * config/abi/mips-linux-gnu/baseline_symbols.txt + * config/abi/sparc-freebsd5/baseline_symbols.txt + * config/abi/sparc-linux-gnu/baseline_symbols.txt + * config/abi/x86_64-linux-gnu/baseline_symbols.txt: + Remove entry for __basic_file::_M_open_mode. + +2004-02-04 Loren J. Rittle + + * testsuite/performance/20_util/allocator/insert.cc (main): Tweak. + +2004-02-04 Felix Yen + + * testsuite/performance/20_util/producer_consumer.cc: New. + * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops. + +2004-02-04 Benjamin Kosnik + + * testsuite/performance/20_util/allocator.cc: Move to.. + * testsuite/performance/20_util/allocator/insert.cc: ...here. + * testsuite/performance/20_util/allocator_thread.cc: Move to... + * testsuite/performance/20_util/allocator/insert_insert.cc: ...here. + * testsuite/performance/20_util/allocator_map_thread.cc: Move to... + * testsuite/performance/20_util/allocator/map_thread.cc: ...here. + +2004-02-04 Jonathan Wakely + + * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH. + * docs/html/faq/index.txt: Regenerate. + +2004-02-04 Dhruv Matani + + * include/ext/debug_allocator.h: _M_extra now stands for the + number of extra objects instead of the number of extra bytes. + (debug_allocator::allocate): Adjust. + (debug_allocator::deallocate): Adjust. + + * include/ext/pool_allocator.h: Fix typo. + +2004-02-03 Felix Yen + Benjamin Kosnik + + * testsuite/performance/20_util/allocator.cc: Add map, + deque, set tests. + * testsuite/performance/20_util/allocator_thread.cc: Same. + +2004-02-03 Paolo Carlini + + * include/bits/basic_string.h (insert(iterator)): Remove, + non-standard and already scheduled for removal. + +2004-02-03 Paolo Carlini + + * include/bits/stl_iterator_base_funcs.h: Minor formatting + and indentation tweaks. + * include/bits/stl_iterator_base_types.h: Likewise. + * include/bits/stl_list.h: Likewise. + * include/bits/stl_map.h: Likewise. + * include/bits/stl_tempbuf.h: Likewise. + +2004-02-02 Jerry Quinn + + * include/bits/gslice.h, include/bits/gslice_array.h, + include/bits/indirect_array.h, include/bits/mask_array.h, + include/bits/slice_array.h, include/bits/stl_numeric.h, + include/std/std_valarray.h: Update copyright years. + +2004-02-02 Jerry Quinn + + * include/bits/gslice.h (gslice): Document. + * include/bits/gslice_array.h (gslice_array): Document. + * include/bits/indirect_array (indirect_array): Document. + * include/bits/mask_array (mask_array): Document. + * include/bits/slice_array.h (slice,slice_array): Document. + * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum, + adjacent_difference): Document + * include/std/std_valarray.h (valarray): Document. + +2004-02-02 Benjamin Kosnik + + * docs/html/19_diagnostics/howto.html: Move verbose terminate + documentation... + * docs/html/18_support/howto.html: Here. + * docs/html/documentation.html: Add reference here. + +2004-02-02 Paolo Carlini + + * config/locale/gnu/c++locale_internal.h: Remove prototypes + of no longer used GLIBC thread locale functions. + +2004-02-02 Eric Christopher + Zack Weinberg + + * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use + -finput-charset. + * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto. + * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto + * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto. + * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto. + * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto. + * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto. + * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto. + * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc: + Ditto. + +2004-02-02 Paolo Carlini + + * include/bits/stl_function.h: Additional minor tweaks. + * include/bits/stl_multiset.h: Likewise. + + * include/bits/stl_queue.h: Minor tweaks. + +2004-02-02 Paolo Carlini + + PR libstdc++/13976 (continued) + * include/ext/malloc_allocator.h (malloc_allocator::deallocate): + Make the second parameter unnamed, to void unused parameter + warnings. + * include/ext/new_allocator.h (new_allocator::deallocate): Ditto. + +2004-02-02 Paolo Carlini + + PR libstdc++/13976 + * include/ext/malloc_allocator.h (malloc_allocator::allocate): + Make the second parameter unnamed, to void unused parameter + warnings. + * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto. + * include/ext/new_allocator.h (new_allocator::allocate): Ditto. + +2004-02-01 Paolo Carlini + + * include/bits/stl_algo.h: Additional minor tweaks. + * 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_tree.h: Likewise. + +2004-02-01 Paolo Carlini + + * include/bits/vector.tcc (vector::_M_insert_aux(iterator)): + Remove, unused. + +2004-02-01 Paolo Carlini + + * include/bits/stl_function.h: Additional minor tweaks. + +2004-02-01 Paolo Carlini + + * include/bits/deque.tcc: Wrap overlong lines, constify + a few variables, reformat according to the coding standards. + * include/bits/list.tcc: Likewise. + * include/bits/stl_deque.h: Likewise. + * include/bits/stl_function.h: Likewise. + * include/bits/stl_iterator.h: Likewise. + * include/bits/stl_iterator_base_funcs.h: Likewise. + * include/bits/stl_iterator_base_types.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_relops.h: Likewise. + * include/bits/stl_set.h: Likewise. + +2004-02-01 Paolo Carlini + + * include/bits/stl_bvector.h: Wrap overlong lines, constify + a few variables, reformat according to the coding standards. + * include/bits/stl_tree.h: Likewise. + +2004-01-31 Paolo Carlini + + * include/bits/stl_algo.h: Minor additional reformat, add + copyright year. + * include/bits/stl_algobase.h: Add copyright year. + +2004-01-31 Paolo Carlini + + * include/bits/stl_algo.h: Wrap overlong lines, constify + a few variables, reformat according to the coding standards. + * include/bits/stl_algobase.h: Likewise. + * include/bits/stl_heap.h: Likewise. + +2004-01-31 Paolo Carlini + + * include/bits/basic_string.h (_Rep::operator[]): Remove, unused. + + * include/bits/basic_string.h: Fix two comments. + +2004-01-31 Per Bothner + + * include/ext/mt_allocator.h + (__mt_alloc::_S_thread_freelist_mutex): Guard with + __GTHREAD_MUTEX_INIT. + +2004-01-31 Paolo Carlini + + * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak. + +2004-01-30 Paolo Carlini + + * testsuite/21_strings/basic_string/cons/char/6.cc: New. + * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New. + * testsuite/performance/21_strings/string_cons_input_iterator.cc: New. + +2004-01-30 Felix Yen + + * testsuite/performance/20_util/allocator_thread.cc (do_loop): + Don't use clear, but instead assign. Use insert. + +2004-01-30 Benjamin Kosnik + + * src/demangle.cc: Add instantiations. + * src/Makefile.am: Remove special rules for demangle.lo, demangle.o. + * src/Makefile.in: Regenerate. + +2004-01-30 David Edelsohn + + * src/allocator.cc: Protect _S_get_thread_id() and + _S_thread_key_destr() with #ifdef __GTHREADS. + +2004-01-30 Paolo Carlini + + Reshuffle performance testsuite. + * testsuite/performance/allocator.cc, allocator_map_thread.cc, + allocator_thread.cc, complex_norm.cc, container_benchmark.cc, + cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc, + fstream_seek_write.cc, ifstream_extract_float.cc, + ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc, + list_create_fill_sort.cc, map_create_fill.cc, + narrow_widen_char.cc, narrow_widen_wchar_t.cc, + ofstream_insert_float.cc, ofstream_insert_int.cc, + string_append.cc, wchar_t_in.cc, wchar_t_length.cc, + wchar_t_out.cc: Split into... + * testsuite/performance/20_util/allocator.cc: New. + * testsuite/performance/20_util/allocator_map_thread.cc: New. + * testsuite/performance/20_util/allocator_thread.cc: New. + * testsuite/performance/21_strings/string_append: New. + * testsuite/performance/22_locale/is_wchar_t.cc: New. + * testsuite/performance/22_locale/narrow_widen_char.cc: New. + * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New. + * testsuite/performance/22_locale/wchar_t_in.cc: New. + * testsuite/performance/22_locale/wchar_t_length.cc: New. + * testsuite/performance/22_locale/wchar_t_out.cc: New. + * testsuite/performance/23_containers/container_benchmark.cc: New. + * testsuite/performance/23_containers/list_create_fill_sort.cc: New. + * testsuite/performance/23_containers/map_create_fill.cc: New. + * testsuite/performance/26_numerics/complex_norm.cc: New. + * testsuite/performance/27_io/cout_insert_int.cc: New. + * testsuite/performance/27_io/filebuf_copy.cc: New. + * testsuite/performance/27_io/filebuf_sputc.cc: New. + * testsuite/performance/27_io/fstream_seek_write.cc: New. + * testsuite/performance/27_io/ifstream_extract_float.cc: New. + * testsuite/performance/27_io/ifstream_extract_int.cc: New. + * testsuite/performance/27_io/ifstream_getline.cc: New. + * testsuite/performance/27_io/ofstream_insert_float.cc: New. + * testsuite/performance/27_io/ofstream_insert_int.cc: New. + +2004-01-30 Paolo Carlini + + * include/bits/basic_string.tcc (_Rep::_S_create): + Never allocate a string bigger than max_size(); always keep + __capacity and __size in sync to avoid memory leaks at + deallocation time. + +2004-01-30 Paolo Carlini + + * include/bits/basic_string.tcc (_S_construct(_InIterator, + _InIterator, const _Alloc&, input_iterator_tag)): Simplify + the double loop, streamline. + + * include/bits/basic_string.tcc: Very minor tweaks. + +2004-01-30 Loren J. Rittle + + * scripts/check_performance: Only compile with $THREAD_FLAG + when test is marked to require it. Allow multiple + compilations/executions of marked tests. + * testsuite/testsuite_performance.h (report_performance): + Report dynamic thread support status. + (report_header): Likewise. + * testsuite/performance/allocator.cc: Stabilize iteration + count. Support more allocators. Mark each allocator test to + run and report independently. + * testsuite/performance/allocator_map_thread.cc: Likewise. + * testsuite/performance/allocator_thread.cc: Likewise. + +2004-01-29 Stephen M. Webb + + * config/local/generic/c_locale.h: Change ::malloc() to new char[]. + * config/local/gnu/c_locale.h: Change ::malloc() to new char[]. + * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use + std::get_temporary_buffer() instead of duplicating its code. + Update to C++STYLE conventions. + * include/std/std_memory.h (get_temporary_buffer): Use ::operator + new() instead of std::malloc(). + (return_temporary_buffer): Use ::operator delete() instead of + std::free(). + +2004-01-29 Benjamin Kosnik + + * include/bits/allocator.h: Temporary switch to new_allocator as + the default to unjam bootstraps. + +2004-01-28 Benjamin Kosnik + + * include/Makefile.am (bits_headers): Remove allocator_traits.h. + * include/Makefile.in: Regenerate. + * include/bits/allocator_traits.h: Remove. + * include/bits/allocator.h: Remove allocator_traits.h include, and + relevant comments. + (allocator): Empty base class, inherit from the underlying allocator. + * src/allocator-inst.cc: Move __pool_alloc instantiation to... + * src/allocator.cc: ...here. New. For the underlying allocators. + Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits. + * config/linker-map.gnu: Remove __pool_alloc bits. + * src/Makefile.am (sources): Add allocator.cc. + * src/Makefile.in: Regenerate. + * testsuite/20_util/allocator/1.cc: Split second test into... + * testsuite/20_util/allocator/8230.cc: ...this. + * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector + typedef to use std::allocatore. Format. + * include/ext/pool_allocator.h: Remove allocator_traits.h include, + _Alloc_traits. + * include/ext/mt_allocator.h (__gnu_cxx): Qualify + __throw_bad_alloc calls. Don't include . + * include/ext/malloc_allocator.h: Remove include. + * include/ext/new_allocator.h (new_allocator): Same. + * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using + declaration. Switch __alloc to _Alloc. + * include/ext/hashtable.h: Remove __alloc. + * include/backward/alloc.h: Only inject allocator, not + implementation details. + + * include/ext/mt_allocator.h: Replace free with delete. + +2004-01-28 Benjamin Kosnik + + * src/globals_io.cc: Change to __gnu_internal namespace. + * src/globals_locale.cc: Same. + * src/locale_init.cc: Same. + * src/ios_init.cc: Same. + +2004-01-28 Stefan Olsson + + * include/ext/mt_allocator.h: Replaced all malloc() calls with + operator new(). Added support for the env variable + GLIBCXX_FORCE_NEW (this required the _S_init call to be the first + one in allocate() as well). Fix typos. + +2004-01-28 Paolo Carlini + + * include/bits/basic_string.h (_S_create(size_t, + const _Alloc&): Change signature to take two size_type + arguments. + * include/bits/basic_string.tcc (_S_construct(_InIterator, + _InIterator, const _Alloc&, input_iterator_tag)): Update + call, tweak a bit. + (_S_construct(_InIterator, _InIterator, const _Alloc&, + forward_iterator_tag)): Likewise. + (_S_construct(size_type, _CharT, const _Alloc&)): Likewise. + (_M_mutate(size_type, size_type, size_type)): Don't + implement the exponential growth policy, demand it to + _S_create, update call and simplify. + (_M_clone(const _Alloc&, size_type)): Likewise. + (_S_create(size_type, size_type, const _Alloc&)): Implement + the growth policy, simplify otherwise. + + * include/bits/basic_string.h (_Rep::operator[]): Tweak + signature to take a size_type, consistently with the other + members. + +2004-01-27 Benjamin Kosnik + + * testsuite/27_io/ios_base/storage/11584.cc: Correct new and + delete declarations, add include and test variable. + +2003-01-27 Jerry Quinn + + * include/bits/codecvt.h, include/bits/locale_facets.h, + include/bits/postypes.h, include/bits/stl_bvector.h, + include/bits/stl_multiset.h, include/bits/stl_set.h, + include/bits/stream_iterator.h, include/bits/streambuf_iterator.h, + include/std/std_complex.h: Document. + +2004-01-27 Jerry Quinn + + PR libstdc++/11584 + * include/bits/ios_base.h (ios_base::_M_grow_words): Add + iword/pword selector. + (ios_base::iword, ios_base::pword): Use it. + * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero + iword or pword member on alloc failure. + * testsuite/27_io/ios_base/storage/11584.cc: New test. + +2004-01-27 Ulrich Weigand + PJ Darcy + + * configure.host: Add support for *-tpf. + * crossconfig.m4: Likewise. + * configure: Regenerate. + * config/os/tpf: New directory. + * config/os/tpf/os_defines.h: New file. + * config/os/tpf/ctype_base.h: Likewise. + * config/os/tpf/ctype_inline.h: Likewise. + * config/os/tpf/ctype_noninline.h: Likewise. + +2004-01-27 Paolo Carlini + + PR libstdc++/13884 + * include/bits/sstream.tcc: Guard use of extern template. + +2004-01-27 Paolo Carlini + + * include/bits/basic_string.tcc + (basic_string(const basic_string&, size_type, size_type), + basic_string(const basic_string&, size_type, size_type, + const _Alloc&)): Avoid unnecessarily constructing iterators. + +2004-01-26 Paolo Carlini + + * config/locale/generic/c_locale.cc: Fix throw messages + to use the __N marker. + * config/locale/gnu/c_locale.cc: Likewise. + * config/locale/ieee_1003.1-2001/codecvt_specializations.h: + Likewise. + * docs/html/17_intro/C++STYLE: Likewise. + * include/bits/basic_ios.tcc: Likewise. + * include/bits/fstream.tcc: Likewise. + * include/bits/vector.tcc: Likewise. + * include/ext/ropeimpl.h: Likewise. + * include/std/std_bitset.h: Likewise. + * src/ios.cc: Likewise. + * src/locale.cc: Likewise. + * src/localename.cc: Likewise. + +2004-01-26 Paolo Carlini + + * include/bits/basic_string.h (_M_replace_aux): Use the + __N marker in throw message. + * include/bits/basic_string.tcc (assign(const _CharT*, + size_type), insert(size_type, const _CharT*, size_type), + replace(size_type, size_type, const _CharT*, size_type), + reserve, _Rep::_S_create, resize, _M_replace_dispatch): + Likewise. + + * include/bits/basic_string.h, include/bits/basic_string.tcc: + Fold overlong lines, minor formatting changes. + +2004-01-26 Paolo Carlini + + * include/bits/basic_string.h (replace(iterator, iterator, + const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT. + (replace(iterator, iterator, const _CharT*)): Ditto. + (replace(iterator, iterator, const _CharT*, size_type)): + Add missing _GLIBCXX_DEBUG_PEDASSERT. + +2004-01-26 Paolo Carlini + + * include/bits/basic_string.tcc (replace(size_type, + size_type, const _CharT*, size_type)): Implement optimized + in-place algorithm for non-overlapping ranges. + * testsuite/21_strings/basic_string/replace/char/6.cc: New. + * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New. + + * include/bits/basic_string.tcc (insert(size_type, + const _CharT*, size_type)): Tweak slightly. + +2004-01-26 Andreas Schwab + + * config/locale/gnu/monetary_members.cc: Restore locale before + rethrowing exception. + +2004-01-25 Paolo Carlini + + * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe): + Define inline here. + * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe): + Move inline. + + * include/bits/basic_string.tcc: Very minor tweaks. + +2004-01-25 Paolo Carlini + + * testsuite/performance/string_append.cc: Increase number + of iterations. + +2004-01-25 Paolo Carlini + + * include/bits/basic_string.h (erase(size_type, size_type), + erase(iterator), erase(iterator, iterator)): Call _M_replace_safe + instead, thus avoiding redundant check for length_error. + + * include/bits/basic_string.h: Tweak some comments. + +2004-01-24 Paolo Carlini + + * include/bits/basic_string.tcc (operator+(const _CharT*, + const basic_string&)): No need to go through the append + taking two iterators. + +2004-01-24 Paolo Carlini + + * include/bits/basic_string.tcc (rfind(_CharT, size_type)): + Revert last change to use std::min: machine language is worse. + (find_last_of(const _CharT*, size_type, size_type)): Ditto. + (find_last_not_of(const _CharT*, size_type, size_type)): Ditto. + (find_last_not_of(_CharT, size_type)): Ditto. + + * include/bits/basic_string.tcc (insert(size_type, const _CharT*, + size_type)): Discard the value returned by _M_check. + (replace(size_type, size_type, const _CharT*, size_type)): Ditto. + (append(const basic_string&, size_type, size_type)): Ditto. + (copy(_CharT*, size_type, size_type)): Ditto. + (compare(size_type, size_type, const basic_string&)): Ditto. + (compare(size_type, size_type, const basic_string&, + size_type, size_type)): Ditto. + (compare(size_type, size_type, const _CharT*)): Ditto. + (compare(size_type, size_type, const _CharT*, size_type)): Ditto. + +2004-01-24 Paolo Carlini + + * include/bits/basic_string.h (insert(size_type, + const basic_string&, size_type, size_type)): Define inline here. + * include/bits/basic_string.tcc (insert(size_type, + const basic_string&, size_type, size_type)): Move inline. + +2004-01-24 Paolo Carlini + + * include/bits/basic_string.h (assign(const basic_string&, + size_type, size_type)): Define inline here. + (replace(size_type, size_type, const basic_string&, + size_type, size_type)): Ditto. + (_M_replace_dispatch(iterator, iterator, _InputIterator, + _InputIterator, __false_type)): Only declare. + (_M_replace(iterator, iterator, _InputIterator, + _InputIterator)): Remove. + * include/bits/basic_string.tcc (assign(const basic_string&, + size_type, size_type)): Move inline. + (replace(size_type, size_type, const basic_string&, + size_type, size_type)): Ditto. + (_M_replace_dispatch(iterator, iterator, _InputIterator, + _InputIterator, __false_type)): Define, now does also what + _M_replace did before. + * src/string-inst.cc (_M_replace): Don't instantiate. + + * include/bits/basic_string.tcc (find(const _CharT*, + size_type, size_type)): Tidy. + (rfind(_CharT, size_type)): Ditto. + (find_first_not_of(const _CharT*, size_type, size_type)): Ditto. + (find_first_not_of(_CharT, size_type)): Ditto. + (find_last_not_of(const _CharT*, size_type, size_type)): Ditto. + (find_last_not_of(_CharT, size_type)): Ditto. + +2004-01-23 Paolo Carlini + + PR libstdc++/13838 + * include/debug/bitset (operator|=): Fix typo. + * testsuite/23_containers/bitset/operations/13838.cc: New. + +2004-01-23 Paolo Carlini + + * include/bits/basic_string.tcc (insert(size_type, + const _CharT*, size_type __n)): Fix length_error check. + (replace(size_type, size_type, const _CharT*, size_type): + Ditto; call _M_replace_safe. + (_M_replace_aux(size_type, size_type, size_type, _CharT): + Fix length_error check. + (_M_replace(iterator, iterator, _InputIterator, + _InputIterator)): Ditto, tweak. + (_M_replace_safe(size_type, size_type, const _CharT*, + size_type)): Remove length_error check. + + * include/bits/basic_string.tcc (append(const basic_string&), + append(const basic_string&, size_type, size_type)): Tweak + comment. + + * include/bits/basic_string.tcc (copy(_CharT*, size_type, + size_type)): If __n == 0 don't call traits::copy. + +2004-01-23 Stefan Olsson + + * include/ext/mt_allocator.h: Reduce lock contention. + +2004-01-23 Paolo Carlini + + PR libstdc++/13831 + * include/bits/fstream.tcc (underflow): Remove unused + variable. + * include/bits/streambuf_iterator.h (equal): Ditto. + * include/bits/locale_facets.h (_M_convert_from_char): + Ditto. + +2004-01-23 Kaveh R. Ghazi + + PR c/13814 + * config/linker-map.gnu (nan): Delete. + * libmath/mathconf.h (NAN, nan): Delete. + * linkage.m4 (nan): Don't check for it. + * libmath/nan.c: Delete file. + + * config.h.in, configure: Regenerate. + +2004-01-23 Paolo Carlini + + * include/bits/basic_string.h (push_back(_CharT)): + Call _M_replace_aux. + (insert(size_type, const basic_string&)): Trivial tweak. + (insert(size_type, size_type, _CharT)): Call _M_replace_aux. + (insert(iterator, _CharT)): Ditto. + (erase(size_type, size_type)): Ditto. + (erase(iterator)): Ditto. + (erase(iterator, iterator)): Ditto. + (replace(size_type, size_type, size_type, _CharT)): Ditto. + +2004-01-23 Loren J. Rittle + + libstdc++/13823 + * testsuite/performance/allocator_map_thread.cc: New test. + +2004-01-22 Paolo Carlini + + * include/bits/locale_facets.tcc + (money_put::do_put(..., long double)): Use the basic_string + constructor for char arrays, not that for C-strings, to pass + __digits to do_put(..., const string_type&): __ws isn't + null-terminated. + +2004-01-22 Paolo Carlini + + * include/bits/basic_string.h (_M_replace_safe): Change + signatures to take size_types and const _CharT*. + (_M_replace_aux): Likewise, takes size_types instead of + iterators. + (append(size_type, _CharT)): Update call. + (assign(size_type, _CharT)): Ditto. + (replace(iterator, iterator, size_type, _CharT)): Ditto. + (_M_replace_dispatch(iterator, iterator, _Integer, + _Integer, __true_type)): Ditto. + * include/bits/basic_string.tcc (assign(const _CharT*, + size_type)): Ditto. + (insert(size_type, const _CharT*, size_type)): Ditto. + (replace(size_type, size_type, const _CharT*, + size_type)): Ditto. + (_M_replace(iterator, iterator, _InputIterator, + _InputIterator)): Ditto. + (append(const basic_string&)): Ditto. + (append(const basic_string&, size_type, size_type): Ditto. + (append(const _CharT*, size_type): Ditto. + (_M_replace_safe, _M_replace_safe): Change definitions + accordingly, simplify. + * string-inst.cc (_M_replace_safe): Don't instantiate. + +2004-01-21 Paolo Carlini + + * include/bits/basic_string.tcc (append(const basic_string&)): + Revert previous change. + (append(const basic_string&, size_type, size_type)): Revert + previous change, use _M_check and _M_limit. + +2004-01-21 Paolo Carlini + + * include/bits/basic_string.h (_M_check): Change to return + a checked __pos and take an additional const char* argument. + (_M_fold): Rename to _M_limit, change to return a size_type, + corresponding to the __off limited to the actual length. + (insert(size_type, size_type, _CharT)): Update call, call + replace. + (insert(iterator, _CharT)): Call replace(iterator, iterator, + size_type, _CharT) instead. + (erase(size_type, size_type)): Update calls. + (replace(size_type, size_type, size_type, _CharT)): Ditto. + (substr(size_type, size_type)): Use _M_check. + * include/bits/basic_string.tcc (basic_string(const basic_string&, + size_type, size_type)): Update calls. + (basic_string(const basic_string&, size_type, size_type, + const _Alloc&)): Ditto. + (assign(const basic_string&, size_type, size_type)): Use the + new _M_check and _M_limit. + (insert(size_type, const basic_string&, size_type, size_type): + Ditto. + (insert(size_type, const _CharT*, size_type)): Ditto. + (replace(size_type, size_type, const _CharT*, size_type): Ditto. + (replace(size_type, size_type, const basic_string&, + size_type, size_type)): Ditto. + (append(const basic_string&)): Ditto. + (append(const basic_string&, size_type, size_type)): Ditto. + (copy(_CharT*, size_type, size_type)): Ditto. + (compare(size_type, size_type, const basic_string&)): Ditto. + (compare(size_type, size_type, const basic_string&,size_type, + size_type)): Ditto. + (compare(size_type, size_type, const _CharT*)): Ditto. + (compare(size_type, size_type, const _CharT*, size_type)): Ditto. + +2004-01-19 Stefan Olsson + + * include/ext/mt_allocator.h: If a thread, when it dies, still has + memory on it's freelist this memory is not returned to global + list. Simplification of deallocate so that memory is always + returned to the calling thread id's freelist instead of to + global. Fix typos. Add volatile where appropriate. + +2004-01-19 Loren J. Rittle + + * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered. + * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but + use __gnu_cxx::stdio_sync_filebuf instead; allow buffered stream. + +2004-01-19 Paolo Carlini + + * src/debug.cc: Make sure all the names are prefixed with + double (or single) underscore. + +2004-01-19 Paolo Carlini + + * src/debug.cc: Trivial formatting change. + +2004-01-19 Paolo Carlini + + * include/bits/basic_string.tcc (_S_construct(size_type, + _CharT, const _Alloc&)): Remove redundant try/catch. + (_M_mutate(size_type, size_type, size_type)): Ditto. + (_M_clone(const _Alloc&, size_type)): Ditto. + +2004-01-18 Paolo Carlini + + * include/bits/basic_string.h (c_str()): Simplify, due to + 21.3.4 the internal representation is always kept null-terminated. + * include/bits/basic_string.tcc (_M_clone): Null-terminate. + * testsuite/21_strings/basic_string/element_access/char/4.cc: New. + * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc: + Ditto. + +2004-01-18 Paolo Carlini + + * include/bits/basic_string.h (append(size_type, _CharT)): + Moved inline, just call _M_replace_aux, no source iterators at + risk of being clobbered. + (assign(size_type, _CharT)): Call directly _M_replace_aux. + (_M_replace(iterator, iterator, _InputIterator, _InputIterator, + input_iterator_tag)): Remove fifth unused argument. + (_M_replace_dispatch(iterator, iterator, _InputIterator, + _InputIterator, __false_type)): Update call. + * include/bits/basic_string.tcc (replace(size_type, size_type, + const _CharT*, size_type)): Update call. + (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak + throw string literal. + (_M_replace_safe(iterator, iterator, _ForwardIterator, + _ForwardIterator)): Likewise. + (_M_replace(iterator, iterator, _InputIterator, _InputIterator, + input_iterator_tag)): Remove fifth unused argument. + (append(size_type __n, _CharT __c)): Move inline. + * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator, + const C*, const C*, input_iterator_tag)): Remove fifth unused + argument. + +2004-01-16 Benjamin Kosnik + + * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards. + * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same. + +2004-01-16 Danny Smith + + * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling + mkfifo for mingw32. + +2004-01-15 Stefan Olsson + + * include/ext/mt_allocator.h: Reuse thread id's as soon as + possible by changing the behaviour of thread_freelist to do + push_front when threads die instead of push_back. + +2004-01-14 Paolo Carlini + + * include/bits/locale_facets.h (struct __numpunct_cache): + Add member _M_grouping_size, caching the length of _M_grouping. + (__numpunct_cache<>::_M_cache): Assign the latter. + (__verify_grouping): Move declaration... + * include/bits/locale_facets.tcc (__verify_grouping): + ... here, change signature to take a const char* and a size_t + for the grouping; not a template anymore. + (__add_grouping, num_put::_M_group_int, num_put::_M_group_float): + Likewise change signature and tweak consistently. + (num_get::_M_extract_float, num_get::_M_extract_int, + num_put::_M_insert_int, num_put::_M_insert_float, + money_get::do_get(string_type&), money_get::do_put(string_type)): + Update callers. + * config/locale/generic/numeric_members.cc + (numpunct<>::_M_initialize_numpunct): Assign the new member. + * config/locale/gnu/numeric_members.cc + (numpunct<>::_M_initialize_numpunct): Likewise. + * src/locale-inst.cc (__add_grouping): Tweak signature. + (__verify_grouping): Don't instantiate, not a template anymore. + + * include/bits/locale_facets.h: Rename _M_truename_len -> + _M_truename_size, _M_falsename_len -> _M_falsename_size. + * include/bits/locale_facets.tcc: Likewise. + * config/locale/generic/numeric_members.cc: Likewise. + * config/locale/gnu/numeric_members.cc: Likewise. + +2004-01-14 Stefan Olsson + + * include/ext/mt_allocator.h: Fixups. + * testsuite/performance/allocator.cc: Enable __mt_alloc tests. + * testsuite/performance/allocator_thread.cc: Same. + +2004-01-13 Benjamin Kosnik + + * testsuite/performance/ifstream_extract_float.cc: Add higher + precision tests. + * testsuite/performance/ofstream_insert_float.cc: Same. + +2004-01-13 Paolo Carlini + + * src/locale-misc-inst.cc (__convert_from_v(long), + __convert_from_v(unsigned long), __convert_from_v(long long), + __convert_from_v(unsigned long long)): Remove, unused. + +2004-01-13 Benjamin Kosnik + + * testsuite/performance/ifstream_extract_float.cc: New. + * testsuite/performance/ofstream_insert_float.cc: Float generation + matches above. + + * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into... + * 20_util/auto_ptr/1.cc: ...this. + * 20_util/auto_ptr/2.cc: Same. + * 20_util/auto_ptr/3.cc: Same. + * 20_util/auto_ptr/3946.cc: Same. + * 20_util/auto_ptr/4.cc: Same. + * 20_util/auto_ptr/5.cc: Same. + * 20_util/auto_ptr/6.cc: Same. + * 20_util/auto_ptr/7.cc: Same. + * 20_util/auto_ptr/assign_neg.cc + * 20_util/pairs.cc: Break into... + * 20_util/pair/1.cc: ...this. + * 20_util/pair/2.cc: Same. + * 20_util/pair/3.cc: Same. + * 20_util/pair/4.cc: Same. + +2004-01-13 Paolo Carlini + + * include/bits/locale_facets.tcc (num_get::do_get(void*&)): + Set correctly just basefield, the only group that matters. + +2004-01-13 Paolo Carlini + + * include/ext/rope (_Rope_rep_alloc_base): Eliminate. + (_Rope_rep_base): Inherit directly from the rope allocator; + use rebinding instead of _Alloc_traits; pick up data member + from _Rope_rep_alloc_base. + (_Rope_alloc_base): Eliminate. + (_Rope_base): Inherit directly from the rope allocator; use + rebinding instead of _Alloc_traits; pick up data member from + _Rope_alloc_base. + (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation, + rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak. + +2004-01-13 Paolo Carlini + + PR libstdc++/13650 + * include/bits/basic_string.tcc (compare(size_type, size_type, + const _CharT*, size_type)): Implement correctly the resolution + of DR 5: basically, s is a char array, -not- a C string. + * include/bits/basic_string.h: Tweak some comments. + * testsuite/21_strings/basic_string/compare/char/13650.cc: New. + * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New. + +2004-01-12 Andreas Tobler + + * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for + Solaris. + +2004-01-12 Paolo Carlini + + * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: + Use try_mkfifo. + * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: + Likewise. + +2004-01-12 Paolo Carlini + + * include/bits/locale_facets.h (struct __numpunct_cache): + Add members _M_truename_len and _M_falsename_len, caching + the lengths of _M_truename and _M_falsename. + (__numpunct_cache<>::_M_cache): Assign the latter. + * include/bits/locale_facets.tcc (num_get::do_get(bool&), + num_put::do_put(bool)): Use the new members, thus avoiding + computing string lengths again and again. + * config/locale/generic/numeric_members.cc + (numpunct<>::_M_initialize_numpunct): Assign the new members. + * config/locale/gnu/numeric_members.cc + (numpunct<>::_M_initialize_numpunct): Likewise. + +2004-01-12 Mark Mitchell + + * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it. + * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define + it. + * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo + and remove Cygwin XFAIL. + * 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/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. + +2004-01-11 Gabriel Dos Reis + + * include/std/std_complex.h (std::complex<>::real): Return a + reference. Add non-const overload. + (std::complex<>::real): Likewise. + (std::real): Likewise. + (std::imag): Likewise. + (std::operator+): Tidy. + (std::operator-): Likewise. + (std::operator*): Likewise. + (std::operator/): Likewise. + (std::operator>>): Likewise. + +2004-01-11 Paolo Carlini + + PR libstdc++/13582 + * include/bits/fstream.tcc (imbue): Exploit the external + buffer to imbue 'on the fly' a new locale and convert its + remainder with the new codecvt facet. + (underflow): Tweak slightly to deal with this special case. + * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New. + * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto. + * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto. + * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto. + * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto. + +2004-01-10 Paolo Carlini + + * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html: + Import Revision 28. + +2004-01-10 Paolo Carlini + + PR libstdc++/13630 + * include/bits/locale_classes.h (class locale): Fix category + typedef. + * testsuite/22_locale/locale/13630.cc: Add. + +2004-01-10 Giovanni Bajo + + * include/bits/locale_facets.h: Make a name really dependent. This + will be needed when Core Issue 224 is implemented. + +2004-01-09 Paolo Carlini + + * testsuite/performance/allocator.cc: Demangle typeid(obj).name(). + * testsuite/performance/allocator_thread.cc: Likewise. + +2004-01-07 Benjamin Kosnik + + * crossconfig.m4: Add LFS, io bits to linux cross config. + * acconfig.h: Remove obsolete bits, reorder. + * config.h.in: Regenerate. + * aclocal.m4: Same. + * configure: Same. + +2004-01-07 Gawain Bolton + + * include/bits/stl_list.h: + * include/bits/list.tc: + * src/list.cc: + Performance enhancements for destructor, push_front(), + push_back(), pop_front(), pop_back(), sort() + Eliminated static_casts where possible. + Moved code out of header files into new src/list.cc + implementation file for library where possible. + Remove inheritance from iterator class and create separate + classes for non-constant and constant iterators. + * include/bits/stl_tree.h (_Rb_tree class): + * src/tree.cc: + Only erase contents in destructor. + Eliminate unnecessary initialization in assignment operator. + Optimize for the nominal case by not checking whether + container is empty in clear(). + Re-order test in _M_insert() to improve performance. + Move initialization of new node's left & right pointers to + src/tree.cc to where new node's colour is initialized + and to reduce the amount of inline code. + Use _M_leftmost() and _M_end() to improve readability where + appropriate. + Create separate classes for non-constant and constant + iterators to clarify code, avoid extra template parameters and + casting away constness. + +2004-01-07 Benjamin Kosnik + + * src/Makefile.am (sources): Add list.cc, tree.cc. + * src/stl_tree.cc: Move to... + * src/tree.cc: ...here. + * src/list.cc: Add. + * config/linker-map.gnu: Tweaks. + * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors. + * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors. + + * bits/stl_vector.h: Column wrap comments. + +2004-01-07 Loren J. Rittle + + (re-open) PR libstdc++/12658 + * src/locale_init.cc (locale::locale): Remove ill-scoped mutex. + (locale::global): Likewise. + +2004-01-07 Paolo Carlini + + * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc: + Remove redundant #include. + * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise. + * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise, + re-enable normal testing. + * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant + #include. + * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise. + * testsuite/27_io/basic_ostream/inserters_character/char/1.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_character/char/2.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_character/char/3.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_character/char/4.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_character/char/5.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_character/char/6.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_character/char/8.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc: + More properly, #include . + * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc: + Remove redundant #include. + * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise. + * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove + redundant DejaGnu directive. + * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove + redundant #include. + +2004-01-06 Benjamin Kosnik + Stefan Olsson + + * scripts/check_performance: Use -pthread. + * testsuite/performance/allocator.cc: Tweaks, add list. + * testsuite/performance/allocator_thread.cc: New. + +2004-01-06 Jerry Quinn + + * include/bits/locale_facets.h: Document public classes and + functions. + * include/bits/locale_facets.tcc (time_get::_M_extract_via_format): + Add comment. + +2004-01-06 Paolo Carlini + + * testsuite/27_io/basic_istream/extractors_other/char/1.cc: + Remove redundant #includes. + * testsuite/27_io/basic_istream/extractors_other/char/2.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_other/char/3.cc: + Likewise. + * testsuite/27_io/basic_istream/get/char/1.cc: Likewise. + * testsuite/27_io/basic_istream/get/char/2.cc: Likewise. + * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise. + * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise. + * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise. + * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise. + * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise. + * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise. + * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise. + * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise. + * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise. + * testsuite/27_io/basic_istream/read/char/1.cc: Likewise. + * testsuite/27_io/basic_istream/read/char/2.cc: Likewise. + * testsuite/27_io/basic_istream/read/char/3.cc: Likewise. + * testsuite/27_io/basic_istream/readsome/char/6746-1.cc: + Likewise. + * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: + Likewise. + * testsuite/27_io/basic_istream/readsome/char/8258.cc: + Likewise. + * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: + Likewise. + * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: + Likewise. + * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise. + * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise. + * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise. + +2004-01-04 Paolo Carlini + + * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: + Remove redundant #includes. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc: + Likewise. + * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: + Likewise. + * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: + Likewise. + +2004-01-04 Mark Mitchell + + PR c++/12226 + * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy + constructor. + * testsuite/27_io/basic_fstream/4.cc: Likewise. + * testsuite/27_io/basic_ifstream/4.cc: Likewise. + * testsuite/27_io/basic_ios/4.cc: Likewise. + * testsuite/27_io/basic_iostream/4.cc: Likewise. + * testsuite/27_io/basic_istream/4.cc: Likewise. + * testsuite/27_io/basic_istingstream/4.cc: Likewise. + * testsuite/27_io/basic_ofstream/4.cc: Likewise. + * testsuite/27_io/basic_ostream/4.cc: Likewise. + * testsuite/27_io/basic_ostringstream/4.cc: Likewise. + * testsuite/27_io/basic_stringbuf/5.cc: Likewise. + * testsuite/27_io/basic_stringstream/4.cc: Likewise. + +2004-01-04 Paolo Carlini + + * config/locale/generic/numeric_members.cc (_M_initialize_numpunct): + Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in; + always use double underscored names. + * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct): + Likewise. + * include/bits/locale_facets.h (struct __numpunct_cache): + Dimension _M_atoms_out and _M_atoms_in one position smaller. + (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out + and _M_atoms_in. diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/1.cc index f17fd059593..16c6bbe94e3 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/1.cc @@ -1,6 +1,6 @@ // 1999-07-26 bkoz -// Copyright (C) 1999, 2003 Free Software Foundation +// Copyright (C) 1999, 2003, 2005 Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -41,8 +41,9 @@ void test01() // template<_CharT, _Traits> // basic_istream& operator>>(istream&, _CharT*) - int n = 20; + const int n = 20; char array1[n]; + array1[0] = '\0'; typedef std::ios::traits_type ctraits_type; ctraits_type::int_type i1, i2; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc index 351056ae049..0114e5b06bc 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004 Free Software Foundation +// Copyright (C) 2004, 2005 Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -39,8 +39,9 @@ void test01() // template<_CharT, _Traits> // basic_istream& operator>>(istream&, _CharT*) - int n = 20; + const int n = 20; wchar_t array1[n]; + array1[0] = L'\0'; typedef std::wios::traits_type ctraits_type; ctraits_type::int_type i1, i2; -- 2.11.0