diff options
author | Alexander Kabaev <kan@FreeBSD.org> | 2007-05-19 01:25:07 +0000 |
---|---|---|
committer | Alexander Kabaev <kan@FreeBSD.org> | 2007-05-19 01:25:07 +0000 |
commit | f8a1b7d9d8e7e8113637568c296021aea90c1b72 (patch) | |
tree | ea6c2718dc1e45ed535d194df808ef31f0ebac92 /contrib/libstdc++/ChangeLog-2004 | |
parent | 6b834ef156bcf24dcf0e281f57ee5bde03ca07cf (diff) | |
download | src-f8a1b7d9d8e7e8113637568c296021aea90c1b72.tar.gz src-f8a1b7d9d8e7e8113637568c296021aea90c1b72.zip |
GCC 4.2.0 release C++ standard library and runtime support code.
Notes
Notes:
svn path=/vendor/gcc/dist/; revision=169691
Diffstat (limited to 'contrib/libstdc++/ChangeLog-2004')
-rw-r--r-- | contrib/libstdc++/ChangeLog-2004 | 4126 |
1 files changed, 3438 insertions, 688 deletions
diff --git a/contrib/libstdc++/ChangeLog-2004 b/contrib/libstdc++/ChangeLog-2004 index 02c456f9b8f4..9b58b9ed9369 100644 --- a/contrib/libstdc++/ChangeLog-2004 +++ b/contrib/libstdc++/ChangeLog-2004 @@ -1,49 +1,875 @@ +2004-12-31 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <redi@gcc.gnu.org> * include/bits/vector.tcc (erase(iterator, iterator), operator=, _M_assign_aux(_ForwardIterator, _ForwardIterator, forward_iterator_tag)): Qualify all calls to std::copy(). -2004-12-23 Paolo Carlini <pcarlini@suse.de> +2004-12-29 Paolo Carlini <pcarlini@suse.de> 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): Use __throw_exception_again, instead of - plain throw. + 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 <pcarlini@suse.de> + + * 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 <edelsohn@gnu.org> + + * configure.host (aix4*|aix5*): Add atomic_word_dir. + * config/os/aix/atomic_word.h: New file. + +2004-12-27 Jason Merrill <jason@redhat.com> + + 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 <pcarlini@suse.de> + + * include/tr1/type_traits: Rework the _DEFINE_SPEC* macros. + +2004-12-26 Paolo Carlini <pcarlini@suse.de> + + * include/tr1/type_traits (__is_enum_helper): Slightly simplify, + make __convert non template. + +2004-12-26 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * include/tr1/type_traits (is_enum): Minor tweak. + +2004-12-25 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * include/tr1/type_traits: Add missing undef. + +2004-12-24 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <dhruvbird@gmx.net> + + * include/ext/bitmap_allocator.h: Make doxygen style comments for + internal functions and classes. + +2004-12-19 Dhruv Matani <dhruvbird@gmx.net> + + * 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 <dannysmith@users.sourceforge.net> + + PR target/18997 + * config/os/newlib/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK): + Define to 0 for __CYGWIN__. + +2004-12-16 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * include/tr1/type_traits (extent): Minor tweak (i.e., public). + +2004-12-12 Paolo Carlini <pcarlini@suse.de> + + * include/tr1/type_traits: Minor tweak. + * testsuite/tr1/4_metaprogramming/type_properties/extent/ + typedefs.cc: Fix date. + +2004-12-12 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <edelsohn@gnu.org> + + * Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and + PICFLAG. + * Makefile.in: Regenerated. + +2004-12-07 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + * 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 <pcarlini@suse.de> + PR libstdc++/18837 * testsuite/testsuite_performance.h: Fix mallinfo macros for hpux. -2004-12-06 Volker Reichelt <reichelt@igpm.rwth-aachen.de> +2004-12-04 Richard Henderson <rth@redhat.com> - * config/locale/ieee_1003.1-2001/codecvt_specializations.h - (do_out, do_unshift, do_in): Remove redundant typedef. + * testsuite/26_numerics/complex/pow.cc: Use -mieee on alpha. + +2004-12-04 Richard Henderson <rth@redhat.com> + + * include/ext/malloc_allocator.h: Include cstdlib. + +2004-12-04 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + 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 <pcarlini@suse.de> + + PR libstdc++/18690 + * include/tr1/utility (get(pair), get(const pair)): Change + occurrences of _I to _Int. + +2004-11-27 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + 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<char>::getline, istream<wchar_t>::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 <kcook@gcc.gnu.org> + + * configure: Regenerate for libtool change. + +2004-11-24 Kelley Cook <kcook@gcc.gnu.org> + + * 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 <redi@kayari.org> * docs/html/ext/howto.html: Fix incorrect link. * docs/html/documentation.html: Regenerate. +2004-11-24 Nathan Myers <ncm@cantrip.org> + + * 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 <bkoz@redhat.com> + + * include/Makefile.am (tr1_headers): Add utility, functional. + * include/Makefile.in: Regenerate. + +2004-11-24 Chris Jefferson <chris@bubblescope.net> + + * 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<pair>): 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 <reichelt@igpm.rwth-aachen.de> + + * config/locale/ieee_1003.1-2001/codecvt_specializations.h + (do_out, do_unshift, do_in): Remove redundant typedef. + +2004-11-23 Chris Jefferson <chris@bubblescope.net> + + * 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 <dave.anglin@nrc-cnrc.gc.ca> + + * testsuite/lib/libstdc++.exp: Use new procs in target-libpath.exp. + +2004-11-23 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <bkoz@redhat.com> + + * 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 <redi@gcc.gnu.org> + + * 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 <pcarlini@suse.de> + + * 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 <redi@gcc.gnu.org> + + * Makefile.am (doxygen, doxygen-maint, doxygen-man): Remove extra '$' + from host_alias variable. + * Makefile.in: Regenerate. + +2004-11-19 Chris Jefferson <chris@bubblescope.net> + + * include/bits/stl_list.h (list::back, list::back const): + Don't decrement temporary. + +2004-11-19 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> - * include/bits/locale_facets.tcc (time_get<>::do_get_weekday, - time_get<>::do_get_monthname): Absolutely avoid dereferencing - end iterators. + * 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. - * include/bits/locale_facets.tcc (time_get<>::_M_extract_name): - Minor tweak. +2004-11-18 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + 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 <pcarlini@suse.de> + + * 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 <redi@gcc.gnu.org> * docs/html/19_diagnostics/howto.html: Document change from _GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4. +2004-11-16 Matthias Klose <doko@debian.org> + + * docs/doxygen/user.cfg.in: Set HAVE_DOT to NO. + +2004-11-16 Matthias Klose <doko@debian.org> + + * 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 <pcarlini@suse.de> + + * 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 <doko@debian.org> + + * 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 <bkoz@redhat.com> + + * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.4. + +2004-11-15 Paolo Carlini <pcarlini@suse.de> + + * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 33. + +2004-11-14 Paolo Carlini <pcarlini@suse.de> + + * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): + Slightly tweak for clarity (also leads to measurably better code). + +2004-11-12 Andrew Pinski <pinskia@physics.uc.edu> + + PR other/14264 + * testsuite/lib/libstdc++.exp: Set LC_ALL and LANG to C. + +2004-11-09 Paolo Carlini <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> Doug Gregor <dgregor@cs.indiana.edu> @@ -51,14 +877,131 @@ * src/debug.cc : Just use one mutex. 2004-11-08 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * testsuite/performance/27_io/ifstream_getline-2.cc: New. + +2004-11-05 Benjamin Kosnik <bkoz@redhat.com> + + 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 <pcarlini@suse.de> + + * 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 <redi@gcc.gnu.org> + + * include/bits/stl_numeric.h (partial_sum, adjacent_difference): + Avoid dereferencing two times __first in the prologue. + +2004-11-03 Paolo Carlini <pcarlini@suse.de> + + * include/bits/stl_numeric.h: Trivial formatting fixes. + +2004-11-03 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <aaronavay62@aaronwl.com> + + * 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 <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> Lothar Werzinger <lothar@xcerla.com> PR libstdc++/17664 * src/debug.cc: Include concurrence, use mutexes. (_Safe_iterator_base::_M_attach): Here. (_Safe_iterator_base::_M_detach): Here. - -2004-11-08 Benjamin Kosnik <bkoz@redhat.com> + +2004-11-02 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/17922 * include/bits/ios_base.h : Add enum values. @@ -77,32 +1020,54 @@ * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers. * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. -2004-11-08 Momchil Velikov <velco@fadata.bg> +2004-11-01 Momchil Velikov <velco@fadata.bg> PR libstdc++/18185 * libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled exceptions. * testsuite/thread/18185.cc: New. + +2004-11-01 Chris Jefferson <chris@bubblescope.net> -2004-11-07 Paolo Carlini <pcarlini@suse.de> - Andrea Arcangeli <andrea@suse.de> + PR libstdc++/18159 + * include/tr1/tuple (get(pair)): Change occurrences of _I to _Int. + (get(const pair)): Likewise. - * 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-11-01 Paolo Carlini <pcarlini@suse.de> -2004-11-07 Paolo Carlini <pcarlini@suse.de> - Kenneth C. Schalk <ken@xorian.net> + * 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. - PR libstdc++/17215 - * config/io/basic_file_stdio.cc (__basic_file<char>::close()): - Check the return value of fclose/sync, loop on EINTR. - (__basic_file<char>::sys_open): Likewise, for sync. +2004-10-31 Benjamin Kosnik <bkoz@redhat.com> + + PR c++/16728 + * testsuite/23_containers/set/modifiers/16728.cc: New. + +2004-10-30 Paolo Carlini <pcarlini@suse.de> + + * 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 <geoffk@apple.com> -2004-11-04 Release Manager + * 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. - * GCC 3.4.3 released. + * testsuite/22_locale/locale/cons/12658_thread-1.cc: Only xfail + on Linux. 2004-10-29 Chris Jefferson <chris@bubblescope.net> @@ -110,54 +1075,436 @@ Remove invalid EqualOpConcept. * testsuite/25_algorithms/find_first_of/concept_check_1.cc: New. +2004-10-29 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <chris@bubblescope.net> + + PR libstdc++/18159 + * include/tr1/tuple: Fix, change formatting. + +2004-10-28 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> - * 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/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-28 Paolo Carlini <pcarlini@suse.de> +2004-10-27 Paolo Carlini <pcarlini@suse.de> - 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. - * aclocal.m4: Regenerate. - * configure: Likewise. - * config.h.in: Likewise. + * include/bits/basic_string.h (assign(const basic_string&)): + Move out of line... + * include/bits/basic_string.tcc: ... here. -2004-10-28 Paolo Carlini <pcarlini@suse.de> +2004-10-27 Paolo Carlini <pcarlini@suse.de> - * README: Remove obsolete entry about include/c_shadow. + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> + + * 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 <geoffk@apple.com> + + * 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 <bkoz@redhat.com> + + * 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 <bkoz@redhat.com> + + * include/Makefile.am (tr1_headers): Add tuple. + * include/Makefile.in: Regenerate. + +2004-10-25 Chris Jefferson <chris@bubblescope.net> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * include/bits/basic_string.tcc (assign(const _CharT*, size_type)): + Adjust bit missing from the previous commit. 2004-10-25 Eric Botcazou <ebotcazou@libertysurf.fr> PR other/18138 * testsuite/lib/libstdc++.exp: Accept more than one multilib libgcc. +2004-10-25 Paolo Carlini <pcarlini@suse.de> + + * 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 <pinskia@physics.uc.edu> + + * 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 <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> + Benjamin Kosnik <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> + Dhruv Matani <dhruvbird@gmx.net> + Nathan Myers <ncm@cantrip.org> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * testsuite/performance/20_util/allocator/list_sort_search.cc: + Include <ext/new_allocator.h>. + * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. + +2004-10-18 Paolo Carlini <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> + + * 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 <dhruvbird@gmx.net> + Paolo Carlini <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> + + * include/tr1/array: Don't use layout_type. + +2004-10-16 Sashan Govender <sashang@gmail.com> + + * include/tr1/array (array::end const): Fix casting from iterator + to const_iterator. + +2004-10-15 Paolo Carlini <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> - * include/std/std_memory.h (__get_temporary_buffer): Don't use - INT_MAX, prefer numeric_limits<ptrdiff_t>::max(), ok on 64-bit - platforms too. - * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust dg-error - line numbers. + * include/ext/bitmap_allocator.h (bitmap_allocator::_Alloc_block): + Rename __unused to __M_unused. + +2004-10-14 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <bkoz@redhat.com> + + * include/ext/mt_allocator.h: Tweaks. + * src/mt_allocator.cc: Same. + +2004-10-14 Dhruv Matani <dhruvbird@gmx.net> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + PR libstdc++/17948 + * include/bits/stl_tree.h (erase(iterator, iterator)): Revert + wrong commit of 2004-10-07. + +2004-10-12 Scott Snyder <snyder@fnal.gov> + + PR libstdc++/17948 + * testsuite/23_containers/set/modifiers/17948.cc: New. + +2004-10-11 Benjamin Kosnik <bkoz@redhat.com> + + * include/bits/stl_deque.h: Correct for over-long lines. + +2004-10-11 Benjamin Kosnik <bkoz@redhat.com> + + 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 <bkoz@redhat.com> + + 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 <kuebart@mathematik.uni-ulm.de> Paolo Carlini <pcarlini@suse.de> - * src/allocator.cc (__pool_alloc_base::_M_allocate_chunk): + * 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 <cstdlib>. +2004-10-10 Benjamin Kosnik <bkoz@redhat.com> + + * include/bits/functexcept.h: Add guards. + + * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Tweak test. + * configure: Regenerate. + 2004-10-10 Paolo Carlini <pcarlini@suse.de> * config/locale/gnu/monetary_members.cc (_S_construct_pattern): @@ -167,10 +1514,60 @@ words or linux.words, otherwise exit. * testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak. -2004-10-10 Paolo Carlini <pcarlini@suse.de> +2004-10-09 Paolo Carlini <pcarlini@suse.de> - * include/bits/sstream.tcc (seekpos): In case of success, just - return __sp. + * include/std/std_memory.h (__get_temporary_buffer): Don't use + INT_MAX, prefer numeric_limits<ptrdiff_t>::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 <bkoz@redhat.com> + + * 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 <phil@codesourcery.com> + + * testsuite/lib/libstdc++.exp: Update list of undefined functions. + +2004-10-07 Paolo Carlini <pcarlini@suse.de> + + * include/bits/list.tcc (operator=): Avoid iterator postincrement. + * include/bits/stl_tree.h (erase(iterator, iterator)): Likewise. + +2004-10-07 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <rearnsha@arm.com> + + * testsuite/lib/libstdc++.exp (libstdc++_exit): New proc. 2004-10-07 Roger Sayle <roger@eyesopen.com> @@ -178,23 +1575,110 @@ * configure.ac: Newlib does not provide strtold. * configure: Regenerate. -2004-10-05 Paolo Carlini <pcarlini@suse.de> +2004-10-06 Benjamin Kosnik <bkoz@redhat.com> - 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_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. + * 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 <bkoz@redhat.com> + Paolo Carlini <pcarlini@suse.de> + + PR libstdc++/17780 + * src/mt_allocator.cc (__pool<true>::_M_reserve_block): Revert + to old locking order. + +2004-10-06 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <caj@cs.york.ac.uk> + + * 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 <bkoz@redhat.com> + + 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<false>): 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 <uweigand@de.ibm.com> * configure.host (abi_baseline_pair): Define for s390-*-linux* and @@ -202,12 +1686,11 @@ * config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols. * config/abi/s390x-linux-gnu/baseline_symbols.txt: New file. -2004-10-04 Roger Sayle <roger@eyesopen.com> - Eric Botcazou <ebotcazou@libertysurf.fr> +2004-10-05 Christopher Jefferson <caj@cs.york.ac.uk> - PR libstdc++/17505 - * config/linker-map.gnu: Synchronize the current list of stub - functions from libmath. + * 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 <bkoz@redhat.com> @@ -215,6 +1698,13 @@ * configure: Regnerate. * testsuite/testsuite_abi.cc (check_version): Add 3.4.3. +2004-10-04 Roger Sayle <roger@eyesopen.com> + Eric Botcazou <ebotcazou@libertysurf.fr> + + PR libstdc++/17505 + * config/linker-map.gnu: Synchronize the current list of stub + functions from libmath. + 2004-10-03 Roger Sayle <roger@eyesopen.com> * config/locale/generic/c_locale.cc (__convert_to_v): Use @@ -222,7 +1712,53 @@ Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99 to check for presence of strtold. -2004-10-02 Paolo Carlini <pcarlini@suse.de> +2004-10-03 Paolo Carlini <pcarlini@suse.de> + + * include/bits/stl_list.h: Trivial formatting fixes. + * include/bits/stl_tree.h: Likewise. + +2004-10-03 Paolo Carlini <pcarlini@suse.de> + + * include/bits/sstream.tcc (seekpos): In case of success, just + return __sp. + +2004-10-01 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + 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 <pcarlini@suse.de> * 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. @@ -231,23 +1767,47 @@ * 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-10-02 Paolo Carlini <pcarlini@suse.de> +2004-09-29 Paolo Carlini <pcarlini@suse.de> Benjamin Kosnik <bkoz@redhat.com> * 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-27 Benjamin Kosnik <bkoz@redhat.com> +2004-09-28 Paolo Carlini <pcarlini@suse.de> - PR libstdc++/16848 - * include/Makefile.am (ext_headers): Remove demangle.h. - * include/Makefile.in: Regenerate. - * include/ext/demangle.h: Remove. + 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 <bkoz@redhat.com> + Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * README: Remove obsolete entry about include/c_shadow. 2004-09-24 H.J. Lu <hongjiu.lu@intel.com> @@ -255,32 +1815,127 @@ * testsuite/lib/libstdc++.exp: Don't use global ld_library_path. 2004-09-24 Paolo Carlini <pcarlini@suse.de> + + * 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 <paul@codesourcery.com> + + * 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 <zack@codesourcery.com> + + * 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 <darcypj@us.ibm.com> + + * 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 <pcarlini@suse.de> Magnus Fromreide <magfr@lysator.liu.se> - + * include/bits/boost_concept_check.h (struct _SequenceConcept): Remove wrong requirement, i.e., not present in Table 67. -2004-09-20 Jonathan Wakely <redi@gcc.gnu.org> +2004-09-21 Paolo Carlini <pcarlini@suse.de> - * testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in - instantiation of set and multiset (functor param given as int). + 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-20 Jonathan Wakely <redi@gcc.gnu.org> +2004-09-17 Jonathan Wakely <redi@gcc.gnu.org> * include/bits/stl_algo.h (remove): Remove too restrictive concept-check. -2004-09-19 Paolo Carlini <pcarlini@suse.de> +2004-09-17 Paolo Carlini <pcarlini@suse.de> * include/bits/fstream.tcc (xsgetn): Slightly tweak conditional, as per Nathan's original suggestion. -2004-09-19 Nathan Myers <ncm@cantrip.org> +2004-09-17 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + Andrea Arcangeli <andrea@suse.de> + + * 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 <mark@codesourcery.com> + + * 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 <ncm@cantrip.org> * include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix for 11722: copy can replace move; the common case is __avail == 0. -2004-09-19 Paolo Carlini <pcarlini@suse.de> +2004-09-14 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> PR libstdc++/11722 * include/std/std_fstream.h (xsgetn): Declare only. @@ -292,12 +1947,104 @@ * include/bits/fstream.tcc (xsputn): Minor tweak, reorder a conditional. -2004-09-17 Paolo Carlini <pcarlini@suse.de> +2004-09-13 Hans-Peter Nilsson <hp@bitrange.com> - * src/localename.cc (locale::_Impl::_Impl): Slightly improve - the algorithm used to name the categories. + * testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call + libstdc++_maybe_build_wrapper instead of using local code. -2004-09-13 Paolo Carlini <pcarlini@suse.de> +2004-09-08 Benjamin Kosnik <bkoz@redhat.com> + + * config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports. + +2004-09-03 Jan Beulich <jbeulich@novell.com> + + * crossconfig.m4: Add NetWare as a target. + * configure: Regenerate. + +2004-09-02 Mark Mitchell <mark@codesourcery.com> + + * libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already + defined. + +2004-09-02 Benjamin Kosnik <bkoz@redhat.com> + Simon Richter <Simon.Richter@hogyros.de> + + PR libstdc++/16715 + * include/bits/istream.tcc: Add extern template for iostream + char and wchar_t instantiations. + +2004-09-02 Benjamin Kosnik <bkoz@redhat.com> + Leland Wang <llwang@infor.org> + + PR libstdc++/17259 + * include/ext/ropeimpl.h (rope::_S_compare): Use + _Rope_constants::_S_leaf. + +2004-09-02 Benjamin Kosnik <bkoz@redhat.com> + + 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 <bkoz@redhat.com> + + 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 <phil@codesourcery.com> + + * 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 <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> + Kenneth C. Schalk <ken@xorian.net> + + PR libstdc++/17215 + * config/io/basic_file_stdio.cc (__basic_file<char>::close()): + Check the return value of fclose/sync, loop on EINTR. + (__basic_file<char>::sys_open): Likewise, for sync. + +2004-08-29 Paolo Carlini <pcarlini@suse.de> * 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 @@ -305,59 +2052,86 @@ * testsuite/22_locale/time_get/get_time/char/4.cc: New. * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise. -2004-09-08 Benjamin Kosnik <bkoz@redhat.com> - Simon Richter <Simon.Richter@hogyros.de> - - PR libstdc++/16715 - * include/bits/istream.tcc: Add extern template for iostream - char and wchar_t instantiations. +2004-08-27 Jason Merrill <jason@redhat.com> -2004-09-08 Benjamin Kosnik <bkoz@redhat.com> - Leland Wang <llwang@infor.org> - - PR libstdc++/17259 - * include/ext/ropeimpl.h (rope::_S_compare): Use - _Rope_constants::_S_leaf. + 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-09-06 Release Manager +2004-08-27 Matthias Klose <doko@debian.org> - * GCC 3.4.2 released. + * configure.host: For mips*-*-linux* update cpu_include_dir + after atomicity_dir is set. -2004-08-30 Benjamin Kosnik <bkoz@redhat.com> - - * include/ext/pool_allocator.h: Rename __pool_base to - __pool_alloc_base. - * src/allocator.cc: Same. - * config/linker-map.gnu: Same. - -2004-08-28 Paolo Carlini <pcarlini@suse.de> +2004-08-27 Matthias Klose <doko@debian.org> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> 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-27 Matthias Klose <doko@debian.org> - - * configure.host: For mips*-*-linux* update cpu_include_dir - after atomicity_dir is set. +2004-08-24 Paolo Carlini <pcarlini@suse.de> -2004-08-27 Matthias Klose <doko@debian.org> + * 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. - * 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*. + * 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 <doko@debian.org> * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> * include/bits/locale_facets.tcc (num_put<>::do_put(bool)): Cast @@ -368,12 +2142,64 @@ * include/bits/locale_facets.tcc (num_put<>::do_put(const void*)): Simplify a bit: no need to clear showpos. +2004-08-21 Paolo Carlini <pcarlini@suse.de> + + * include/bits/char_traits.h (struct _Char_traits_match): Remove, + unused. + +2004-08-21 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <jason@redhat.com> + + * include/Makefile.am (${host_builddir}/gthr.h): Don't add + _GLIBCXX_ to #pragma lines. + * include/Makefile.in: Update. + +2004-08-20 Paolo Carlini <pcarlini@suse.de> + + 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 <dave.anglin@nrc-cnrc.gc.ca> + + * cpu/hppa/atomicity.h (__exchange_and_add, __atomic_add): Add memory + barrier to locking asm. + +2004-08-20 Paolo Carlini <pcarlini@suse.de> + + * 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 <doko@debian.org> * config/abi/s390-linux-gnu/baseline_symbols.txt: New. 2004-08-20 Paolo Carlini <pcarlini@suse.de> + * include/c_std/cmath.tcc (__cmath_power): Suppress assignment + used as truth value warning. + +2004-08-20 Paolo Carlini <pcarlini@suse.de> + * config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Add 32 bit baseline. @@ -381,18 +2207,36 @@ * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Fix it. +2004-08-19 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> * 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_mt_find.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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> @@ -418,18 +2262,131 @@ 2004-08-16 Paolo Carlini <pcarlini@suse.de> - * 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". + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * include/bits/deque.tcc: Trivial formatting fixes. + +2004-08-15 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> - + * src/debug.cc (_Error_formatter::_M_print_string): Fix thinko, memmove is not needed, memcpy suffices. +2004-08-13 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * configure.ac: Specify version 1.8.5 in AM_INIT_AUTOMAKE. + +2004-08-12 Paolo Carlini <pcarlini@suse.de> + + 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 <paul@codesourcery.com> + + * 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 <kcook@gcc.gnu.org> + + * 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 <jbeulich@novell.com> + + * config/locale/generic/ctype_members.cc + (ctype<wchar_t>::_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<wchar_t>::_M_convert_to_wmask): Likewise. + +2004-08-11 Paolo Carlini <pcarlini@suse.de> + + * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Fix typo. + +2004-08-11 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> Petur Runolfsson <peturr02@ru.is> PR libstdc++/16959 @@ -437,48 +2394,228 @@ standard streams are constructed. * testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New. -2004-08-08 Jonathan Wakely <redi@gcc.gnu.org> +2004-08-09 Paolo Carlini <pcarlini@suse.de> + + * include/bits/stl_bvector.h: Trivial formatting fixes. + +2004-08-09 Paolo Carlini <pcarlini@suse.de> + + * src/ios.cc (ios_base::_M_grow_words): Uglify the names. + +2004-08-07 Jonathan Wakely <redi@gcc.gnu.org> Paolo Carlini <pcarlini@suse.de> - + * 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-07-30 Paolo Carlini <pcarlini@suse.de> - Petur Runolfsson <peturr02@ru.is> - - PR libstdc++/12658 (continued) - * src/locale_init.cc (locale::locale, locale::global): Use - a single locale_mutex instead of two separate mutexes. +2004-08-07 Paolo Carlini <pcarlini@suse.de> -2004-07-30 Paolo Carlini <pcarlini@suse.de> + * 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". - * testsuite/22_locale/locale/cons/12658_thread.cc: Xfail: due to - a bug in glibcs older than 2004-07-16, it can unpredictably fail - irrespective of the correctness of libstdc++. +2004-08-04 Phil Edwards <phil@codesourcery.com> + + * docs/html/configopts.html: Emphasize that options change. + * docs/html/17_intro/configury.html: Update links. + +2004-08-03 Paolo Carlini <pcarlini@suse.de> + + * include/bits/list.tcc: Trivial formatting fixes. + +2004-08-03 Mark Mitchell <mark@codesourcery.com> + + * libsupc++/new_op.cc: Update comments. + * libsupc++/del_op.cc: Likewise. + +2004-08-02 Mark Mitchell <mark@codesourcery.com> + + * 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 <cxxabi.h>. + + * 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 <austern@apple.com> + + 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 Benjamin Kosnik <bkoz@redhat.com> +2004-07-30 Paolo Carlini <pcarlini@suse.de> - * src/locale_init.cc: Use __gnu_cxx::lock. + * 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-30 Paolo Carlini <pcarlini@suse.de> +2004-07-29 Paolo Carlini <pcarlini@suse.de> - * testsuite/22_locale/num_put/put/char/14220.cc: Increase the value - of precision: 10 is too small to actually trigger the bug. + 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-30 Paolo Carlini <pcarlini@suse.de> +2004-07-29 Paolo Carlini <pcarlini@suse.de> * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 31. 2004-07-29 Paolo Carlini <pcarlini@suse.de> + Petur Runolfsson <peturr02@ru.is> + + 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 <pcarlini@suse.de> 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 <phil@codesourcery.com> + + * 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 <austern@apple.com> + + * 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 <aoliva@redhat.com> + + 2003-10-01 Eric Christopher <echristo@redhat.com> + * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm' + constraint. + 2003-07-09 Alexandre Oliva <aoliva@redhat.com> + * config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a. + +2004-07-23 Benjamin Kosnik <bkoz@redhat.com> + + PR libstdc++/16678 + * include/bits/locale_facets.tcc: Fix for -Werror. + +2004-07-23 Jonathan Wakely <redi@gcc.gnu.org> + + * docs/html/debug.html: Say debug mode only available since 3.4.0. + +2004-07-21 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <dannysmith@users.sourceforge.net> * include/c_std/std_cwchar.h (wcsstr): Correct signature. @@ -487,7 +2624,7 @@ PR libstdc++/15488 * testsuite/lib/libstdc++.exp (v3-copy-files): Revert. - + 2004-07-17 Richard Sandiford <rsandifo@redhat.com> PR bootstrap/16469 @@ -507,25 +2644,226 @@ 2004-07-14 Paolo Carlini <pcarlini@suse.de> - * 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). + 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 <pcarlini@suse.de> + * testsuite/22_locale/locale/cons/12658_thread-1.cc, + 12658_thread-2.cc: Use __gnu_test::try_named_locale. + +2004-07-13 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <bkoz@redhat.com> + + * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults + for linux. + * configure: Regenerated. + +2004-07-13 Paolo Carlini <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> + + * docs/html/abi.html: Remove non-public qualification. + + * include/bits/concurrence.h: Tweak comments. + +2004-07-11 Paolo Carlini <pcarlini@suse.de> + + Add wchar_t counterparts of the basic_streambbuf<char> 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 <phil@codesourcery.com> + + * 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 <pcarlini@suse.de> + + Add wchar_t counterparts of the basic_stringbuf<char> 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 <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> + + PR c++/16169 + * include/bits/basic_string.h (basic_string::operator=): Revert. + +2004-07-07 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <aaronraolete36@aaronwl.com> + + PR libstdc++/16411 + * config/linker-map.gnu: Add stdio_sync_filebuf::file exports. + +2004-07-07 Benjamin Kosnik <bkoz@redhat.com> + + * docs/html/abi.html: Updates for 3.4.1 release. Add summary of + -Weffc++ issues. + +2004-07-07 Paolo Carlini <pcarlini@suse.de> + 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-12 Benjamin Kosnik <bkoz@redhat.com> +2004-07-06 Anssi Hannula <anssi.hannula@mbnet.fi> - * include/bits/concurrence.h: Tweak comments. + PR libstdc++/15928 + * crossconfig.m4: Add in bits for djgpp. + * configure: Regenerate. -2004-07-12 Benjamin Kosnik <bkoz@redhat.com> - Per Bothner <per@bothner.com> +2004-07-05 Jonathan Wakely <redi@gcc.gnu.org> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <paul@codesourcery.com> + + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> + Per Bothner <per@bothner.com> Mohan Embar <gnustuff@thisiscool.com> PR libstdc++/16248 @@ -538,72 +2876,79 @@ to mutex_type. * src/allocator.cc: Same. -2004-07-12 Brad Spencer <spencer@infointeractive.com> +2004-06-30 Brad Spencer <spencer@infointeractive.com> * 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-07-12 Paul Brook <paul@codesourcery.com> +2004-06-30 Benjamin Kosnik <bkoz@redhat.com> - * include/bits/concurrence.h: Still create mutex object when - single-threaded. + * config/linker-map.gnu: Revert new exports. -2004-07-12 Benjamin Kosnik <bkoz@redhat.com> +2004-06-30 Benjamin Kosnik <bkoz@redhat.com> + Stuart Anderson <anderson@netsweng.com> - * 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: Add destructor exports for abstract base + classes to conform to LSB. - * src/allocator.cc: Move all instantiations... - * src/allocator-inst.cc: ...here. +2004-06-30 Gabriel Dos Reis <gdr@integrable-solutions.net> + Paolo Carlini <pcarlini@suse.de> -2004-07-12 Benjamin Kosnik <bkoz@redhat.com> + * 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. - * 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-30 Paolo Carlini <pcarlini@suse.de> -2004-07-07 Benjamin Kosnik <bkoz@redhat.com> + * 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. - * configure.ac (libtool_VERSION): To 6:2:0. - * configure: Regenerated. +2004-06-29 Paul Brook <paul@codesourcery.com> - * testsuite/testsuite_abi.cc (check_version): Add 3.4.2. + * libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the + element size in the cookie. -2004-07-07 Aaron W. LaFramboise <aaronraolete36@aaronwl.com> +2004-06-28 Paolo Carlini <pcarlini@suse.de> - PR libstdc++/16411 - * config/linker-map.gnu: Add stdio_sync_filebuf::file exports. - -2004-07-06 Anssi Hannula <anssi.hannula@mbnet.fi> + * include/bits/cpp_type_traits.h: Move the additions to + namespace __gnu_internal outside of namespace std; trivial + formatting fixes. - PR libstdc++/15928 - * crossconfig.m4: Add in bits for djgpp. - * configure: Regenerate. +2004-06-28 Benjamin Kosnik <bkoz@redhat.com> -2004-07-06 Paolo Carlini <pcarlini@suse.de> + * 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. - 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. - * aclocal.m4: Regenerate. - * configure: Regenerate. +2004-06-28 Paolo Carlini <pcarlini@suse.de> -2004-07-06 Paolo Carlini <pcarlini@suse.de> + * src/localename.cc (locale::_Impl::_Impl): Slightly improve + the algorithm used to name the categories. - * include/bits/cpp_type_traits.h: Move the additions to - namespace __gnu_internal outside of namespace std; trivial - formatting fixes. +2004-06-28 Paolo Bonzini <bonzini@gnu.org> + + * 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 <pcarlini@suse.de> + + * config/locale/gnu/monetary_members.cc + (moneypunct<wchar_t>::_M_initialize_moneypunct): Clean up + assignments of _M_decimal_point and _M_thousands_sep. -2004-07-06 Paolo Carlini <pcarlini@suse.de> +2004-06-27 Paolo Carlini <pcarlini@suse.de> * docs/html/17_intro/contribute.html: Update some links. * docs/html/17_intro/porting-howto.html: Likewise. @@ -616,29 +2961,92 @@ * docs/html/faq/index.html: Likewise. * docs/html/install.html: Don't mention 2.x compilers. -2004-07-01 Release Manager +2004-06-27 Paolo Carlini <pcarlini@suse.de> - * GCC 3.4.1 released. + * include/ext/rope: Trivial formatting fixes. + * include/ext/ropeimpl.h: Likewise. -2004-06-28 Benjamin Kosnik <bkoz@redhat.com> +2004-06-26 Paolo Carlini <pcarlini@suse.de> + + 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. - * 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-25 Benjamin Kosnik <bkoz@redhat.com> - PR libstdc++/16182 + PR libstdc++/16182 * linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to AC_DEFINE_UNQUOTED. * configure: Regenerate. +2004-06-25 Paul Brook <paul@codesourcery.com> + + * libsupc++/cxxabi.h: Define __ARM_EABI__ + (__guard): Use it. + * libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto. + +2004-06-25 Paul Brook <paul@codesourcery.com> + + * include/bits/concurrence.h: Still create mutex object when + single-threaded. + +2004-06-25 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * include/bits/stl_algobase.h (fill, fill_n): Tighten the + dispatch: use iterator_traits<>::value_type, not _Tp. + +2004-06-25 Paolo Carlini <pcarlini@suse.de> + + * testsuite/25_algorithms/fill/1.cc: Tweak instantiations. + * testsuite/25_algorithms/fill/2.cc: Likewise. + +2004-06-25 Dan Nicolaescu <dann@ics.uci.edu> + Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * testsuite/25_algorithms/fill/1.cc: New. + * testsuite/25_algorithms/fill/2.cc: Likewise. + 2004-06-25 Benjamin Kosnik <bkoz@redhat.com> * include/debug/formatter.h (__gnu_debug::_Error_formatter): Remove copy constructor and assignment operator. - + +2004-06-24 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <apinski@apple.com> + + * linkage.m4: Remove check for libmx. + * configure: Regenerate. + 2004-06-23 Paolo Carlini <pcarlini@suse.de> PR libstdc++/16154 @@ -646,11 +3054,57 @@ Don't require the _DefaultConstructibleConcept. (struct _ForwardIteratorConcept): Require it here. +2004-06-22 Alexandre Oliva <aoliva@redhat.com> + + * 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 <bkoz@redhat.com> + + * docs/html/abi.html: Update links. + +2004-06-22 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <ljrittle@acm.org> * config/linker-map.gnu: Use wildcards for __basic_file::sys_open(FILE*, _Ios_Openmode). +2004-06-20 Paolo Carlini <pcarlini@suse.de> + + * testsuite/27_io/basic_istream/ignore/char/3.cc: New. + 2004-06-18 Paolo Carlini <pcarlini@suse.de> * include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align, @@ -667,8 +3121,28 @@ _Safe_sequence_base::operator=): Provide definitions. * testsuite/23_containers/bitset/cons/16020.cc: New. +2004-06-18 Benjamin Kosnik <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> + * config/locale/gnu/numeric_members.cc + (numpunct<wchar_t>::_M_initialize_numpunct): Clean up + assignments of _M_decimal_point and _M_thousands_sep. + * config/locale/gnu/time_members.cc + (__timepunct<wchar_t>::_M_initialize_timepunct): Clean up + and reformat assignments of date and time fields. + +2004-06-16 Paolo Carlini <pcarlini@suse.de> + * include/ext/rope (rope(_CharT, const allocator_type&)): Fix to use _Data_allocate. * include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise. @@ -686,17 +3160,52 @@ (rope<>::_S_dump): Likewise. (rope<>::_S_fetch_ptr): Likewise. (rope<>::_S_compare): Likewise. - (rope<>::replace_with_c_str()): 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-18 Paolo Carlini <pcarlini@suse.de> +2004-06-16 Paolo Carlini <pcarlini@suse.de> Matt Austern <austern@apple.com> * testsuite/ext/rope/3.cc: New. -2004-06-17 Paolo Carlini <pcarlini@suse.de> +2004-06-15 Paolo Bonzini <bonzini@gnu.org> + + * 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 <pcarlini@suse.de> + + * include/ext/hashtable.h: Trivial formatting fixes. + * include/ext/rb_tree: Likewise. + +2004-06-14 Paolo Carlini <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> + + * 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 <pcarlini@suse.de> + + * include/ext/slist: Trivial formatting fixes. + +2004-06-14 Paolo Carlini <pcarlini@suse.de> * include/bits/locale_facets.tcc (time_get<>::_M_extract_name): Don't use the 'magic number' 10 in the computation of __minlen; @@ -704,14 +3213,40 @@ decrease __nmatches and increase __i3 at once, only either of the two; tidy. -2004-06-17 Paolo Carlini <pcarlini@suse.de> +2004-06-13 Paolo Carlini <pcarlini@suse.de> - * 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. + * 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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * 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 <dhruvbird@gmx.net> + + * testsuite/performance/21_strings/string_find.cc: New. + +2004-06-10 Aaron W. LaFramboise <aaronraolete36@aaronwl.com> + + * include/bits/istream.tcc (istream::ignore): Fix for -Wuninitialized. -2004-06-11 Paolo Carlini <pcarlini@suse.de> +2004-06-10 Jan van Dijk <jan@etpmod.phys.tue.nl> + + * include/std/std_complex.h (sin(const complex<_Tp>& __z)): Make + this function return a value. + +2004-06-09 Paolo Carlini <pcarlini@suse.de> PR libstdc++/15775 * include/bits/stl_deque.h: Consistently with stl_set.h, define @@ -722,22 +3257,14 @@ * include/bits/stl_multimap.h: Likewise. * include/bits/stl_vector.h: Likewise. -2004-06-11 Dhruv Matani <dhruvbird@gmx.net> - Paolo Carlini <pcarlini@suse.de> - - * 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-10 Benjamin Kosnik <bkoz@redhat.com> +2004-06-09 Benjamin Kosnik <bkoz@redhat.com> - * crossconfig.m4: Remove signbit, signbitf, signbitl. + * 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-10 Benjamin Kosnik <bkoz@redhat.com> +2004-06-08 Benjamin Kosnik <bkoz@redhat.com> * docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std. * docs/doxygen/mainpage.html: Remove links. @@ -747,6 +3274,25 @@ * config/linker-map.gnu: Use wildcards for __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}. +2004-06-08 Paolo Carlini <pcarlini@suse.de> + + * 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 <dhruvbird@gmx.net> + Paolo Carlini <pcarlini@suse.de> + + * 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 <gdr@integrable-solutions.net> + + * include/std/std_complex.h (log): Tidy. + 2004-05-31 Benjamin Kosnik <bkoz@redhat.com> * config/linker-map.gnu (GLIBCXX_3.4.1): Add. @@ -755,122 +3301,61 @@ * configure: Regenerate. * aclocal.m4: Regenerate. -2004-05-31 Richard B. Kreckel <Richard.Kreckel@Framatome-ANP.com> - Benjamin Kosnik <bkoz@redhat.com> - +2004-05-30 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * 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 <Richard.Kreckel@Framatome-ANP.com> + Benjamin Kosnik <bkoz@redhat.com> + 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-30 Benjamin Kosnik <bkoz@redhat.com> +2004-05-27 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/15675 * docs/html/documentation.html: Update doxygen links for 3.4.0. -2004-05-30 Jan Beulich <jbeulich@novell.com> +2004-05-27 Jan Beulich <jbeulich@novell.com> * scripts/create_testsuite_files: Tweak. -2004-05-30 Paolo Carlini <pcarlini@suse.de> - - * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor - tweaks. - -2004-05-30 Dhruv Matani <dhruvbird@gmx.net> - - * 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-30 Paolo Carlini <pcarlini@suse.de> - - * 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-30 Paolo Carlini <pcarlini@suse.de> - - * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): - The critical section is actually very small, only two assignments. - -2004-05-30 Paolo Carlini <pcarlini@suse.de> - - * 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. - -2004-05-30 Paolo Carlini <pcarlini@suse.de> - - * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): - Rearrange arithmetic to avoid computing two divisions at - each deallocation. - -2004-05-30 Paolo Carlini <pcarlini@suse.de> - - * 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-05-30 Paolo Carlini <pcarlini@suse.de> - - * include/ext/mt_allocator.h: Uglify consistently names of - variables, members and classes; tidy. - -2004-05-30 Dhruv Matani <dhruvbird@gmx.net> - - * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): - Deallocation loop rewrote. - -2004-05-30 Paolo Carlini <pcarlini@suse.de> - - * include/ext/mt_allocator.h (__mt_alloc<>::allocate, - __mt_alloc<>::deallocate): Protect two instances of - block->thread_id with __GTHREADS. - -2004-05-30 Paolo Carlini <pcarlini@suse.de> - - * 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-05-30 Paolo Carlini <pcarlini@suse.de> - - * include/ext/mt_allocator.h (__mt_alloc<>::allocate, - __mt_alloc<>::deallocate): Avoid redundant conditionals. - -2004-05-27 Paolo Carlini <pcarlini@suse.de> - - 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. +2004-05-25 Benjamin Kosnik <bkoz@redhat.com> - * 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. + PR libstdc++/15489 + * scripts/create_testsuite_files: Revert xtype change, add non-GNU + bits to do the same thing. -2004-05-25 Paolo Carlini <pcarlini@suse.de> +2004-05-24 Paolo Carlini <pcarlini@suse.de> * include/bits/istream.tcc (ignore): Correctly deal with n == numeric_limits<streamsize>::max(). @@ -892,54 +3377,28 @@ Likewise. * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise. -2004-05-25 Paolo Carlini <pcarlini@suse.de> - - * include/bits/istream.tcc (ignore): Remove redundant line. - (readsome): Tidy, closely following 27.6.1.3, p30. - -2004-05-25 Paolo Carlini <pcarlini@suse.de> - - * 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-25 Benjamin Kosnik <bkoz@redhat.com> - - PR libstdc++/15489 - * scripts/create_testsuite_files: Revert xtype change, add - non-GNU bits to do the same thing. - -2004-05-24 Benjamin Kosnik <bkoz@redhat.com> +2004-05-22 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/12854 - Fixups for -Weffc++. + 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. + * config/locale/gnu/time_members.h (__timepunct): Same. * src/codecvt.cc: Use member initialization list to initialize - _M_c_locale_codecvt. + _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. + * src/localename.cc: Same. * include/bits/basic_ios.h (basic_ios): Complete member initialization list. @@ -950,7 +3409,7 @@ * 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. @@ -964,33 +3423,51 @@ * include/backward/strstream: Declare assignment operator and copy constructor private. -2004-05-24 Benjamin Kosnik <bkoz@redhat.com> +2004-05-22 Benjamin Kosnik <bkoz@redhat.com> * testsuite/testsuite_hooks.h (func_callback): Declare copy - constructor and assignment operator private. + 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-24 Benjamin Kosnik <bkoz@redhat.com> + +2004-05-22 Benjamin Kosnik <bkoz@redhat.com> * 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. - + 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 <bkoz@redhat.com> * testsuite/abi_check.cc: Add unistd.h. +2004-05-22 Paolo Carlini <pcarlini@suse.de> + + 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 <doko@debian.org> - + * docs/doxygen/run_doxygen: Bump required version. 2004-05-21 Benjamin Kosnik <bkoz@redhat.com> @@ -998,7 +3475,27 @@ * docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose. * docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards. -2004-05-21 Benjamin Kosnik <bkoz@redhat.com> +2004-05-21 Paolo Carlini <pcarlini@suse.de> + + * include/bits/istream.tcc (ignore): Remove redundant line. + (readsome): Tidy, closely following 27.6.1.3, p30. + +2004-05-20 Paolo Carlini <pcarlini@suse.de> + + * 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 <bkoz@redhat.com> PR libstdc++/15123 PR libstdc++/13928 @@ -1011,22 +3508,38 @@ * docs/doxygen/stdheader.cc: Edit, add files. * docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7. -2004-05-19 Jan Beulich <jbeulich@novell.com> - - PR libstdc++/15489 - * scripts/create_testsuite_files: Also find source files through - symbolic links. +2004-05-18 Jonathan Wakely <redi@gcc.gnu.org> + + * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691. + +2004-05-18 Jan Beulich <jbeulich@novell.com> + + PR libstdc++/15489 + * scripts/create_testsuite_files: Also find source files through + symbolic links. -2004-05-19 Jan Beulich <jbeulich@novell.com> +2004-05-18 Jan Beulich <jbeulich@novell.com> PR libstdc++/15488 * testsuite/lib/libstdc++.exp: Make test files writable. +2004-05-18 Paolo Carlini <pcarlini@suse.de> + + * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor + tweaks. + +2004-05-18 Dhruv Matani <dhruvbird@gmx.net> + + * 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 <redi@gcc.gnu.org> - * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691. + * include/ext/enc_filebuf.h: Move concept-check macro to class scope. -2004-05-18 Benjamin Kosnik <bkoz@redhat.com> +2004-05-17 Benjamin Kosnik <bkoz@redhat.com> * testsuite/testsuite_hooks.h (__gnu_test::conversion): New class. * testsuite/23_containers/deque/14340.cc: New. @@ -1037,17 +3550,13 @@ * testsuite/23_containers/set/14340.cc: New. * testsuite/23_containers/vector/14340.cc: New. -2004-05-18 Douglas Gregor <gregod@cs.rpi.edu> +2004-05-17 Douglas Gregor <gregod@cs.rpi.edu> - PR libstdc++/14340 - * include/debug/safe_iterator.h (_Safe_iterator converting - constructor): Only allow declaration to instantiate when the + 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-18 Jonathan Wakely <redi@gcc.gnu.org> - - * include/ext/enc_filebuf.h: Move concept-check macro to class scope. - 2004-05-17 Jonathan Wakely <redi@gcc.gnu.org> * include/bits/boost_concept_check.h: Fix old attribute syntax. @@ -1057,36 +3566,74 @@ * testsuite/23_containers/set/modifiers/swap.cc: Same. * testsuite/23_containers/multiset/modifiers/swap.cc: Same. -2004-05-15 Benjamin Kosnik <bkoz@redhat.com> +2004-05-16 Paolo Carlini <pcarlini@suse.de> + + * include/std/std_bitset.h: Minor formatting fixes. + +2004-05-16 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + + * include/std/std_bitset.h: Trivial formatting fixes. + +2004-05-14 Paolo Carlini <pcarlini@suse.de> + Ivan Godard <igodard@pacbell.net> + + 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 <bkoz@redhat.com> PR libstdc++/15046 * crossconfig.m4: Add C99 math bits for linux crosses. * configure: Regenerate. -2004-05-15 Simon Marshall <simon.marshall@misys.com> - Benjamin Kosnik <bkoz@redhat.com> - - 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-15 Jonathan Wakely <redi@gcc.gnu.org> - +2004-05-13 Simon Marshall <simon.marshall@misys.com> + Benjamin Kosnik <bkoz@redhat.com> + + 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 <redi@gcc.gnu.org> + * 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-15 Benjamin Kosnik <bkoz@redhat.com> - +2004-05-13 Benjamin Kosnik <bkoz@redhat.com> + + PR libstdc++/15074 + * docs/html/faq/index.html: Update docs for libsupc++ usage. + +2004-05-13 Benjamin Kosnik <bkoz@redhat.com> + + 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 <bkoz@redhat.com> + * docs/html/abi.html: New. * docs/html/abi.txt: Remove. * docs/html/documentation.html: Add link. @@ -1099,53 +3646,63 @@ * docs/html/17_intro/TODO: Update. * include/bits/stl_pair.h: Format. -2004-05-14 Paolo Carlini <pcarlini@suse.de> - Ivan Godard <igodard@pacbell.net> +2004-05-06 Matthias Klose <doko@debian.org> - PR libstdc++/15361 - * include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix. - * testsuite/23_containers/bitset/ext/15361.cc: New. + * 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-14 Paolo Carlini <pcarlini@suse.de> +2004-05-03 Andreas Tobler <a.tobler@schweiz.ch> - 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. + * acinclude.m4: Replace -W with more speaking -Wextra. + * configure: Rebuilt. -2004-05-13 Benjamin Kosnik <bkoz@redhat.com> +2004-05-03 Paolo Carlini <pcarlini@suse.de> + + 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. - PR libstdc++/15074 - * docs/html/faq/index.html: Update docs for libsupc++ usage. +2004-04-29 Paolo Carlini <pcarlini@suse.de> -2004-05-13 Benjamin Kosnik <bkoz@redhat.com> + * src/locale.cc (locale::operator==): Always avoid constructing + locale::name(), directly compare pairs of _M_names. - 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-09 Paolo Carlini <pcarlini@suse.de> +2004-04-26 Paolo Carlini <pcarlini@suse.de> - * 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. + * include/bits/istream.tcc: Fix comment. -2004-05-09 Paolo Carlini <pcarlini@suse.de> +2004-04-26 Paolo Carlini <pcarlini@suse.de> + + * include/bits/stl_vector.h: Trivial formatting fixes. + * include/bits/vector.tcc: Likewise. + +2004-04-25 Paolo Carlini <pcarlini@suse.de> PR libstdc++/15002 (continued again) * include/bits/istream.tcc (getline(basic_istream<>&, @@ -1158,7 +3715,15 @@ * testsuite/27_io/basic_istream/getline/char/4.cc: Add comment. -2004-05-09 Paolo Carlini <pcarlini@suse.de> +2004-04-25 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> Petur Runolfsson <peturr02@ru.is> PR libstdc++/15002 (continued) @@ -1166,62 +3731,57 @@ 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-05-09 Paolo Carlini <pcarlini@suse.de> +2004-04-24 Paolo Carlini <pcarlini@suse.de> - * testsuite/27_io/basic_istream/getline/char/4.cc: New. + * 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-05-06 Matthias Klose <doko@debian.org> +2004-04-24 Matthias Klose <doko@debian.org> - * 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. + Jonathan Wakely <cow@compsoc.man.ac.uk> + * docs/html/configopts.html: Fix reference to allocator config option. -2004-05-02 Paolo Carlini <pcarlini@suse.de> +2004-04-23 Andrew Pinski <pinskia@physics.uc.edu> - * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator. - * aclocal.m4: Regenerate. + * linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also. * 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-04-30 Paolo Carlini <pcarlini@suse.de> +2004-04-23 Daniel Jacobowitz <drow@mvista.com> - 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. + 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-29 Benjamin Kosnik <bkoz@redhat.com> +2004-04-21 Paolo Carlini <pcarlini@suse.de> - * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc: + * 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 <pcarlini@suse.de> + Andrew Pinski <pinskia@physics.uc.edu> + + * include/bits/basic_string.tcc (_M_mutate): Don't compute + __src unnecessarily. + +2004-04-19 Benjamin Kosnik <bkoz@redhat.com> + + * 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. @@ -1250,82 +3810,67 @@ * 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: + * 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: + * 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. + file name. + * testsuite/27_io/fpos/14775.cc: Same. -2004-04-29 Benjamin Kosnik <bkoz@redhat.com> +2004-04-19 Paolo Carlini <pcarlini@suse.de> - 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-29 Dhruv Matani <dhruvbird@gmx.net> - - * 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. + 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-29 Benjamin Kosnik <bkoz@redhat.com> +2004-04-17 Benjamin Kosnik <bkoz@redhat.com> - * docs/html/20_util/allocator.html: Add bitmap_allocator links. + * include/bits/stl_bvector.h: Use _M_impl._M_start. -2004-04-29 Dhruv Matani <dhruvbird@gmx.net> - - * 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-04-16 Benjamin Kosnik <bkoz@redhat.com> -2004-04-29 Felix Yen <fwy@alumni.brown.edu> + * 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. - * testsuite/performance/20_util/allocator/producer_consumer.cc: - Use linear algorithm for producer. + * 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-29 Paolo Carlini <pcarlini@suse.de> +2004-04-16 Paolo Carlini <pcarlini@suse.de> PR libstdc++/14975 * include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt @@ -1333,30 +3878,75 @@ * 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-26 Paolo Carlini <pcarlini@suse.de> +2004-04-16 Paolo Carlini <pcarlini@suse.de> - * include/bits/istream.tcc: Fix comment. + * acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not + used anymore. + * config.h.in: Regenerate. -2004-04-26 Paolo Carlini <pcarlini@suse.de> +2004-04-16 Paolo Carlini <pcarlini@suse.de> + + * config/locale/generic/monetary_members.cc + (moneypunct<wchar_t>::_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<wchar_t>::_M_initialize_numpunct): Likewise. + * config/locale/gnu/monetary_members.cc + (moneypunct<wchar_t>::_M_initialize_moneypunct): Likewise. + * config/locale/gnu/numeric_members.cc + (numpunct<wchar_t>::_M_initialize_numpunct): Likewise. + +2004-04-15 Paolo Carlini <pcarlini@suse.de> * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl avoid constructing unnecessarily this->name(). -2004-04-24 Loren J. Rittle <ljrittle@acm.org> +2004-04-14 Zack Weinberg <zack@codesourcery.com> - * testsuite/thread/pthread7-rope.cc: Update comment to reflect test. + * testsuite/Makefile.am: Add definition of AM_CXXFLAGS. + Change definition of CXX to use $(shell) instead of backticks. + * testsuite/Makefile.in: Regenerate. -2004-04-24 Paolo Carlini <pcarlini@suse.de> +2004-04-12 Dhruv Matani <dhruvbird@gmx.net> - * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending - on allocator behavior, the memory pointed by data2 may well be not - trashed. + * testsuite/performance/20_util/allocator/list_sort_search.cc: + Minor formatting fixes. + * testsuite/performance/20_util/allocator/map_mt_find.cc: + Likewise. -2004-04-24 Paolo Carlini <pcarlini@suse.de> +2004-04-12 Paolo Carlini <pcarlini@suse.de> + + * config/locale/gnu/numeric_members.cc + (numpunct<wchar_t>::_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 <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> * config/locale/generic/time_members.cc (__timepunct<char>::_M_initialize_timepunct, - __timepunct<wchar_t>::_M_initialize_timepunct): The correct + __timepunct<wchar_t>::_M_initialize_timepunct): the correct _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively. * config/locale/gnu/time_members.cc (__timepunct<char>::_M_initialize_timepunct, @@ -1364,126 +3954,173 @@ * testsuite/22_locale/time_get/get_monthname/char/4.cc: New. * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New. -2004-04-24 Paolo Carlini <pcarlini@suse.de> - Petur Runolfsson <peturr02@ru.is> + * 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 <pcarlini@suse.de> - * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New, - adapted from libstdc++/11378. + * config/locale/gnu/monetary_members.cc + (moneypunct<wchar_t>::_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<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT + and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP. -2004-04-24 Paolo Carlini <pcarlini@suse.de> - Andrew Pinski <pinskia@physics.uc.edu> +2004-04-06 Benjamin Kosnik <bkoz@redhat.com> - * include/bits/basic_string.tcc (_M_mutate): Don't compute - __src unnecessarily. + 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. -2004-04-24 Paolo Carlini <pcarlini@suse.de> + * 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. - 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. + * 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. -2004-04-24 Matthias Klose <doko@debian.org> + * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast. - Jonathan Wakely <cow@compsoc.man.ac.uk> - * docs/html/configopts.html: Fix reference to allocator config option. + * 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. -2004-04-23 Daniel Jacobowitz <drow@mvista.com> + * libsupc++/del_op.cc: Add comment about freestanding. - 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-05 Paolo Carlini <pcarlini@suse.de> -2004-04-23 Paolo Carlini <pcarlini@suse.de> + * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): + The critical section is actually very small, only two assignments. - * config/locale/gnu/monetary_members.cc - (moneypunct<wchar_t>::_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<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT - and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP. +2004-04-04 Paolo Carlini <pcarlini@suse.de> + Petur Runolfsson <peturr02@ru.is> -2004-04-21 Chavdar Botev <cbotev@yahoo.com> + * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New, + adapted from libstdc++/11378. - 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-04-03 Paolo Carlini <pcarlini@suse.de> -2004-04-21 Paolo Carlini <pcarlini@suse.de> - Petur Runolfsson <peturr02@ru.is> + * 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. - 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-04-02 Paolo Carlini <pcarlini@suse.de> -2004-04-18 Release Manager + * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): + Rearrange arithmetic to avoid computing two divisions at + each deallocation. - * GCC 3.4.0 released. +2004-04-01 Paolo Carlini <pcarlini@suse.de> -2004-04-17 Benjamin Kosnik <bkoz@redhat.com> - - * include/bits/stl_bvector.h: Use _M_impl._M_start. - -2004-04-16 Benjamin Kosnik <bkoz@redhat.com> - - * 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/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. - * 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-14 Zack Weinberg <zack@codesourcery.com> +2004-04-01 Paolo Carlini <pcarlini@suse.de> - * testsuite/Makefile.am: Add definition of AM_CXXFLAGS. - Change definition of CXX to use $(shell) instead of backticks. - * testsuite/Makefile.in: Regenerate. + 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-04-09 Andreas Schwab <schwab@suse.de> +2004-03-31 Paolo Carlini <pcarlini@suse.de> - * testsuite/lib/prune.exp (prune_g++_output): Ignore errata - warning from IA64 assembler. + * 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 <bkoz@redhat.com> PR libstdc++/14783 * include/bits/stl_tree.h: Adjust initialization list order. -2004-03-26 Benjamin Kosnik <bkoz@redhat.com> +2004-03-29 Loren J. Rittle <ljrittle@acm.org> + + * testsuite/thread/pthread7-rope.cc: Update comment to reflect test. + +2004-03-29 Paolo Carlini <pcarlini@suse.de> + + * 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 <cbotev@yahoo.com> + + 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 <bkoz@redhat.com> libstdc++ PR/13598 * config/locale/ieee_1003.1-2001/codecvt_specializations.h @@ -1492,10 +4129,26 @@ (__enc_traits::operator=): Use _M_destroy, _M_init. (__enc_traits::__enc_traits): Same. -2004-03-26 Petur Runolfsson <peturr02@ru.is> +2004-03-27 Petur Runolfsson <peturr02@ru.is> * testsuite/ext/enc_filebuf/char/13598.cc: New. +2004-03-27 Paolo Carlini <pcarlini@suse.de> + + * include/ext/mt_allocator.h: Uglify consistently names of + variables, members and classes; tidy. + +2004-03-27 Dhruv Matani <dhruvbird@gmx.net> + + * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): + Deallocation loop rewrote. + +2004-03-26 Paolo Carlini <pcarlini@suse.de> + + * 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 <gp.bolton@computer.org> * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator @@ -1529,6 +4182,19 @@ (*) can be referenced to as _M_impl.(*), where (*) includes _M_header, and _M_node_count. +2004-03-25 Paolo Carlini <pcarlini@suse.de> + + * 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 <dhruvbird@gmx.net> * include/bits/stl_list.h: Created a _List_impl class and made it @@ -1567,6 +4233,46 @@ * testsuite/23_containers/list/cons/clear_allocator.cc: New. * testsuite/23_containers/vector/cons/clear_allocator.cc: New. +2004-03-24 Dhruv Matani <dhruvbird@gmx.net> + + * 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 <bkoz@redhat.com> + + * docs/html/20_util/allocator.html: Add bitmap_allocator links. + +2004-03-24 Andreas Schwab <schwab@suse.de> + + * testsuite/lib/prune.exp (prune_g++_output): Ignore errata + warning from IA64 assembler. + +2004-03-24 Dhruv Matani <dhruvbird@gmx.net> + + * 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 <fwy@alumni.brown.edu> + + * testsuite/performance/20_util/allocator/producer_consumer.cc: + Use linear algorithm for producer. + +2004-03-24 Paolo Carlini <pcarlini@suse.de> + + * include/ext/mt_allocator.h (__mt_alloc<>::allocate, + __mt_alloc<>::deallocate): Avoid redundant conditionals. + 2004-03-23 Benjamin Kosnik <bkoz@redhat.com> * include/bits/locale_facets.h: Tweaks for 80 column. @@ -1586,25 +4292,84 @@ * 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 <pcarlini@suse.de> + + * 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 <hp@axis.com> - PR target/14676 * 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-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de> +2004-03-20 Paolo Carlini <pcarlini@suse.de> - PR libstdc++/14647 - * include/backward/bvector.h (bit_vector): Allocator is in std - namespace. + * 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 <pcarlini@suse.de> * include/std/std_valarray.h: Document DR389 [Ready]. * docs/html/ext/howto.html: Add an entry for DR389. +2004-03-19 Michael Eager <eager@mvista.com> + + * config/cpu/mips/atomicity.h: Prevent reg loads between LL and + SC instructions. + +2004-03-19 Paolo Carlini <pcarlini@suse.de> + + * 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 <pcarlini@suse.de> + Petur Runolfsson <peturr02@ru.is> + + 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 <pcarlini@suse.de> PR libstdc++/14648 @@ -1612,37 +4377,22 @@ memory allocation/deallocation calls. * testsuite/ext/14648.cc: New. -2004-03-17 Benjamin Kosnik <bkoz@redhat.com> - - Revert. - * configure.ac (AC_PREREQ): Use 2.57. - (AM_INIT_AUTOMAKE): Remove -Wno-override. - -2004-03-17 David Billinghurst <David.Billinghurst@riotinto.com> +2004-03-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de> - PR bootstrap/14207 - Revert patch of 2004-02-17, as it breaks mips-sgi-irix6.5 -o32 - (Almost certainly a target issue) - * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, - num_get<>::_M_extract_int, money_get<>::do_get): Simplify - grouping fidelity conditional. + PR libstdc++/14647 + * include/backward/bvector.h (bit_vector): Allocator is in std + namespace. -2004-03-17 Benjamin Kosnik <bkoz@redhat.com> - - Revert dg-require-iconv changes. - * testsuite/22_locale/collate/compare/wchar_t/2.cc: Revert. - * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same. - * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Same. - * testsuite/22_locale/collate/hash/wchar_t/2.cc: Same. - * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Same. - * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same. - * testsuite/22_locale/collate/transform/wchar_t/2.cc: Same. - * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Same. - * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc: +2004-03-19 Phil Edwards <phil@codesourcery.com> -2004-03-16 Benjamin Kosnik <bkoz@redhat.com> + * 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. - * Merge from mainline. + * 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 <bkoz@redhat.com> |