blob: 5481e252799720ba0919a54f28212d1a26cdfda1 [file] [log] [blame]
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-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): 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-04 Richard Henderson <rth@redhat.com>
* 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>
* testsuite/26_numerics/numeric/sum_diff.cc: Use VERIFY.
* testsuite/ext/array_allocator/1.cc: Likewise.
* testsuite/ext/array_allocator/2.cc: Likewise.
* testsuite/ext/array_allocator/3.cc: Likewise.
* testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
2004-11-18 Paolo Carlini <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>
PR libstdc++/17664
* 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-02 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/17922
* include/bits/ios_base.h : Add enum values.
* testsuite/testsuite_hooks.h (bitmask_operators): Add function.
* testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New.
* testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New.
* testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New.
* testsuite/27_io/ios_base/types/iostate/case_label.cc: New.
* testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New.
* testsuite/27_io/ios_base/types/openmode/case_label.cc: New.
* testsuite/27_io/ios_base/types/seekdir/case_label.cc: New.
* config/io/c_io_stdio.h (__ios_flags): Mark deprecated.
* src/ios.cc: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
2004-11-01 Momchil Velikov <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>
PR libstdc++/18159
* include/tr1/tuple (get(pair)): Change occurrences of _I to _Int.
(get(const pair)): Likewise.
2004-11-01 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
Evaluate *__beg the exact strict minimum number of times; likewise
for __beg != __end; in the main parsing loop, call ++__beg in two
places only. The former is also a correctness issue, because,
according to the standard (22.2.2.1.2, Stage 2), 'in' shall be
dereferenced only one time for each increment.
2004-10-31 Benjamin Kosnik <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>
* configure.host (darwin*): Set os_include_dir to a separate directory
for Darwin.
* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind,
'darwin'.
* config/locale/darwin/ctype_members.cc: New.
* config/os/bsd/darwin/ctype_base.h: New.
* config/os/bsd/darwin/ctype_inline.h: New.
* config/os/bsd/darwin/ctype_noninline.h: New.
* config/os/bsd/darwin/os_defines.h: New.
* testsuite/22_locale/locale/cons/12658_thread-1.cc: Only xfail
on Linux.
2004-10-29 Chris Jefferson <chris@bubblescope.net>
* include/bit/stl_algo.h (find_first_of(,,,,pred)):
Remove invalid EqualOpConcept.
* testsuite/25_algorithms/find_first_of/concept_check_1.cc: New.
2004-10-29 Benjamin Kosnik <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/locale_facets.tcc (num_get<>::_M_extract_float):
Cache *__beg in __c when parsing exponent sign too.
(num_get<>::do_get(..., bool&)): Cache *__beg.
(money_get<>::_M_extract)): Likewise, in money_base::value.
2004-10-27 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.h (assign(const basic_string&)):
Move out of line...
* include/bits/basic_string.tcc: ... here.
2004-10-27 Paolo Carlini <pcarlini@suse.de>
* 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/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/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):
Give __ret a default value, thus avoiding spurious warnings.
* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Open either
words or linux.words, otherwise exit.
* testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak.
2004-10-09 Paolo Carlini <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/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>
PR libstdc++/17850
* configure.ac: Newlib does not provide strtold.
* configure: Regenerate.
2004-10-06 Benjamin Kosnik <bkoz@redhat.com>
* 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
s390x-*-linux*.
* config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols.
* config/abi/s390x-linux-gnu/baseline_symbols.txt: New file.
2004-10-05 Christopher Jefferson <caj@cs.york.ac.uk>
* 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>
* configure.ac (libtool_VERSION): To 6:3:0.
* configure: Regnerate.
* testsuite/testsuite_abi.cc (check_version): Add 3.4.3.
2004-10-04 Roger Sayle <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
_GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99
to check for presence of strtold.
2004-10-03 Paolo Carlini <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.
(str()): Slightly tweak, protect from pptr() == 0.
(_M_update_egptr()): Likewise.
* include/bits/sstream.tcc (ssekoff, seekpos): In order to check
for an empty buffer use __beg instead of _M_string.capacity().
* testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
* testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
2004-09-29 Paolo Carlini <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-28 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.
* 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>
PR libstdc++/17469
* 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-21 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12882 (cont)
* acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too.
* configure: Regenerate.
* config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When
_GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non
trivial showmanyc for large files too.
2004-09-17 Jonathan Wakely <redi@gcc.gnu.org>
* include/bits/stl_algo.h (remove): Remove too restrictive
concept-check.
2004-09-17 Paolo Carlini <pcarlini@suse.de>
* include/bits/fstream.tcc (xsgetn): Slightly tweak conditional,
as per Nathan's original suggestion.
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-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.
* include/bits/fstream.tcc (xsgetn): Define, optimize for the
always_noconv() case: when __n > __buflen, copy the available
buffer and issue a direct read.
* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New.
* include/bits/fstream.tcc (xsputn): Minor tweak, reorder a
conditional.
2004-09-13 Hans-Peter Nilsson <hp@bitrange.com>
* testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call
libstdc++_maybe_build_wrapper instead of using local code.
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
and 7.23.3.5), two if !_GLIBCXX_USE_C99.
* testsuite/22_locale/time_get/get_time/char/4.cc: New.
* testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
2004-08-27 Jason Merrill <jason@redhat.com>
PR c++/13684
* libsupc++/guard.cc (static_mutex): Internal class implementing a
recursive mutex which controls initialization of local statics.
(__gnu_cxx::recursive_init): New exception class.
(__cxa_guard_acquire): Deal with locking and recursion detection.
(acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise.
2004-08-27 Matthias Klose <doko@debian.org>
* configure.host: For mips*-*-linux* update cpu_include_dir
after atomicity_dir is set.
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-24 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: New.
* testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
* testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
* testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
* testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Trim excess
newlines.
* testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
2004-08-22 Matthias Klose <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
to a signed type, long according to the resolution of DR 359.
* testsuite/22_locale/num_put/put/char/9.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/9.cc: New.
* include/bits/locale_facets.tcc (num_put<>::do_put(const void*)):
Simplify a bit: no need to clear showpos.
2004-08-21 Paolo Carlini <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.
2004-08-20 Paolo Carlini <pcarlini@suse.de>
* 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_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>
* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2004-08-18 Matthias Klose <doko@debian.org>
* config/abi/hppa-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
* config/abi/i386-linux-gnu/baseline_symbols.txt: New.
* config/abi/powerpc-linux-gnu/baseline_symbols.txt: New.
2004-08-17 Paolo Carlini <pcarlini@suse.de>
* config/abi/alpha-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2004-08-17 Paolo Carlini <pcarlini@suse.de>
* config/abi/ia64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2004-08-17 Benjamin Kosnik <bkoz@redhat.com>
* config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2004-08-16 Paolo Carlini <pcarlini@suse.de>
* 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
* src/ios_init.cc (ios_base::sync_with_stdio): Make sure the
standard streams are constructed.
* testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New.
2004-08-09 Paolo Carlini <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-08-07 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".
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 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
num_get<>::_M_extract_int): In the main parsing loop delay the
life of __q to the actual use point.
2004-07-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/14220
* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
Don't clip the precision passed down to __convert_from_v:
22.2.2.2.2 nowhere says so.
* testsuite/22_locale/num_put/put/char/14220.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise.
2004-07-29 Paolo Carlini <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.
2004-07-19 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/15488
* testsuite/lib/libstdc++.exp (v3-copy-files): Revert.
2004-07-17 Richard Sandiford <rsandifo@redhat.com>
PR bootstrap/16469
* scripts/create_testsuite_files: Pass -print to find.
2004-07-15 Paolo Carlini <pcarlini@suse.de>
* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30.
* docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402.
2004-07-15 Jakub Jelinek <jakub@redhat.com>
PR libstdc++/14697
* acinclude.m4 (glibcxx_shared_libgcc): Correct
glibcxx_shared_libgcc test for multilibs.
* configure: Rebuilt.
2004-07-14 Paolo Carlini <pcarlini@suse.de>
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-06 Anssi Hannula <anssi.hannula@mbnet.fi>
PR libstdc++/15928
* crossconfig.m4: Add in bits for djgpp.
* configure: Regenerate.
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
* include/bits/concurrence.h (__glibcxx_mutex_type): New.
(__glibcxx_mutex): Encapsulate mutex init function into type for
threaded configurations without __GTHREAD_MUTEX_INIT.
(lock::lock): Make device member a reference.
(lock::~lock): Same.
* include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
to mutex_type.
* src/allocator.cc: Same.
2004-06-30 Brad Spencer <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-06-30 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Revert new exports.
2004-06-30 Benjamin Kosnik <bkoz@redhat.com>
Stuart Anderson <anderson@netsweng.com>
* config/linker-map.gnu: Add destructor exports for abstract base
classes to conform to LSB.
2004-06-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
Paolo Carlini <pcarlini@suse.de>
* include/bits/cpp_type_traits.h: Add __is_pointer and
__is_trivially_copyable.
* include/bits/stl_algobase.h (fill, fill_n): Slightly
tweak to use the latter.
(__copy_backward_dispatch): Remove.
(__copy_backward_aux): Rewrite to use __is_pointer and
__is_trivially_copyable and __copy_backward::copy_b.
(__copy_backward): Rewrite as a class template and two
specializations.
2004-06-30 Paolo Carlini <pcarlini@suse.de>
* testsuite/25_algorithms/copy.cc: Move to...
* testsuite/25_algorithms/copy/1.cc: ... here, extend.
* testsuite/25_algorithms/copy/2.cc: New.
* testsuite/25_algorithms/copy/3.cc: New.
* testsuite/25_algorithms/copy/4.cc: New.
2004-06-29 Paul Brook <paul@codesourcery.com>
* libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the
element size in the cookie.
2004-06-28 Paolo Carlini <pcarlini@suse.de>
* include/bits/cpp_type_traits.h: Move the additions to
namespace __gnu_internal outside of namespace std; trivial
formatting fixes.
2004-06-28 Benjamin Kosnik <bkoz@redhat.com>
* include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base):
Revert -Weffc++ changes that defined copy ctory and or assignment
operator.
* libsupc++/tinfo.cc (__upcast_result): Same.
2004-06-28 Paolo Carlini <pcarlini@suse.de>
* src/localename.cc (locale::_Impl::_Impl): Slightly improve
the algorithm used to name the categories.
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-06-27 Paolo Carlini <pcarlini@suse.de>
* docs/html/17_intro/contribute.html: Update some links.
* docs/html/17_intro/porting-howto.html: Likewise.
* docs/html/17_intro/porting-howto.xml: Likewise.
* docs/html/18_support/howto.html: Likewise.
* docs/html/21_strings/howto.html: Likewise.
* docs/html/27_io/howto.html: Likewise.
* docs/html/configopts.html: Likewise.
* docs/html/ext/howto.html: Likewise.
* docs/html/faq/index.html: Likewise.
* docs/html/install.html: Don't mention 2.x compilers.
2004-06-27 Paolo Carlini <pcarlini@suse.de>
* include/ext/rope: Trivial formatting fixes.
* include/ext/ropeimpl.h: Likewise.
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.
2004-06-25 Benjamin Kosnik <bkoz@redhat.com>
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
* include/bits/boost_concept_check.h (struct _TrivialIteratorConcept):
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,
the alignment requested.
(__mt_alloc<>::_Tune::_Tune): Tweak consistently.
(__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record).
(__mt_alloc<>::deallocate): Likewise.
2004-06-18 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/16020
* include/debug/safe_base.h
(_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&),
_Safe_sequence_base::operator=): Provide definitions.
* testsuite/23_containers/bitset/cons/16020.cc: New.
2004-06-18 Benjamin Kosnik <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.
(rope<>::_S_substring): Likewise.
(rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise.
(rope<>::c_str()): Likewise.
(rope<>::replace_with_c_str()): Likewise.
* include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf):
Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::,
not _RopeRep.
(_Rope_iterator_base<>::_S_setcache): Likewise.
(_Rope_iterator_base<>::_S_setcache_for_incr): Likewise.
(rope<>::_S_substring): Likewise.
(rope<>::_S_dump): Likewise.
(rope<>::_S_fetch_ptr): Likewise.
(rope<>::_S_compare): Likewise.
(rope<>::replace_with_c_str()): Likewise.
* testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc.
* testsuite/ext/rope/2.cc: New.
2004-06-16 Paolo Carlini <pcarlini@suse.de>
Matt Austern <austern@apple.com>
* testsuite/ext/rope/3.cc: New.
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;
never access __name past __minlen; in the loop over __i3, don't
decrease __nmatches and increase __i3 at once, only either of
the two; tidy.
2004-06-13 Paolo Carlini <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).
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-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
pointer as allocator's pointer, likewise for reference,
const_pointer, and const_reference.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_vector.h: Likewise.
2004-06-09 Benjamin Kosnik <bkoz@redhat.com>
* crossconfig.m4: Remove signbit, signbitf, signbitl.
* linkage.m4: Comment LIBMATHOBJS, tweak others. AC_DEFINES for
builtin math functions instead of AC_DEFINE_UNQUOTED.
* configure: Regenerate.
2004-06-08 Benjamin Kosnik <bkoz@redhat.com>
* docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std.
* docs/doxygen/mainpage.html: Remove links.
2004-06-08 Jason Merrill <jason@redhat.com>
* 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.
* testsuite/testsuite_abi.cc: Same.
* configure.ac (libtool_VERSION): Bump to 6:1:0.
* configure: Regenerate.
* aclocal.m4: Regenerate.
2004-05-30 Gabriel Dos Reis <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-27 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/15675
* docs/html/documentation.html: Update doxygen links for 3.4.0.
2004-05-27 Jan Beulich <jbeulich@novell.com>
* scripts/create_testsuite_files: Tweak.
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 Paolo Carlini <pcarlini@suse.de>
* include/bits/istream.tcc (ignore): Correctly deal with
n == numeric_limits<streamsize>::max().
* testsuite/27_io/basic_istream/ignore/char/2.cc: New.
* include/bits/istream.tcc (basic_istream<>::getline): Prefer
'_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case
__n == numeric_limits<>::min().
* include/bits/istream.tcc: Minor tweaks.
* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
Tighten.
* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
Likewise.
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
Likewise.
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
Likewise.
* testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
2004-05-22 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12854
Fixups for -Weffc++.
* include/bits/basic_string.h (basic_string::operator=): Return
pointer to this instead of result of assign. Although redundant,
this doesn't impact resultant codegen.
* include/bits/locale_facets.h (__numpunct_cache): Declare
assignment opxserator and copy constructor private.
(__timepunct_cache): Same.
(__moneypunct_cache): Same.
(collate): Use member initialization list for _M_c_locale_collate.
* config/locale/gnu/messages_members.h: Same.
* config/locale/gnu/time_members.h (__timepunct): Same.
* src/codecvt.cc: Use member initialization list to initialize
_M_c_locale_codecvt.
* src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok.
* config/os/gnu-linux/ctype_noninline.h: Same.
* src/locale.cc (_Impl): Same.
* src/locale_init.cc: Same.
* src/localename.cc: Same.
* include/bits/basic_ios.h (basic_ios): Complete member
initialization list.
* include/bits/istream.tcc (basic_istream::sentry): Same.
* include/bits/ostream.tcc (basic_ostream::sentry): Same.
* include/bits/fstream.tcc (basic_filebuf): Add _M_lock and
_M_pback to member initialization list.
* include/std/std_streambuf.h: Same.
* include/std/std_sstream.h: Same, for _M_mode.
* src/ios.cc (ios_base): Same.
* include/ext/rope: Make derived classes match exception
specifications. Add copy constructors and assignment operators.
* include/debug/safe_base.h (_Safe_sequence_base): Declare copy
constructor and assignment operator protected.
(_Safe_iterator_base): Same.
* include/debug/formatter.h (_Error_formatter): Define copy
constructor and assignment operator.
* include/backward/strstream: Declare assignment operator and copy
constructor private.
2004-05-22 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_hooks.h (func_callback): Declare copy
constructor and assignment operator private.
* testsuite/23_containers/deque/cons/clear_allocator.cc: Match
exception specifications of base class.
* testsuite/23_containers/list/cons/clear_allocator.cc: Same.
* testsuite/23_containers/vector/cons/clear_allocator.cc: Same.
* testsuite/23_containers/vector/bool/clear_allocator.cc: New.
2004-05-22 Benjamin Kosnik <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.
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>
* docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose.
* docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards.
2004-05-21 Paolo Carlini <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
* docs/doxygen/Intro.3: Remove Allocators.3.
Add new extension headers, extension namespace list.
* docs/doxygen/run_doxygen (problematic): Remove Allocators.3
Rename GLIBCXXSTD names to std::. Rename __gnu_debug to
__gnu_debug::. Remove __policy_ renames.
* docs/doxygen/guide.html: Add dot note.
* docs/doxygen/stdheader.cc: Edit, add files.
* docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7.
2004-05-18 Jonathan Wakely <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-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/enc_filebuf.h: Move concept-check macro to class scope.
2004-05-17 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_hooks.h (__gnu_test::conversion): New class.
* testsuite/23_containers/deque/14340.cc: New.
* testsuite/23_containers/list/14340.cc: New.
* testsuite/23_containers/map/14340.cc: New.
* testsuite/23_containers/multimap/14340.cc: New.
* testsuite/23_containers/multiset/14340.cc: New.
* testsuite/23_containers/set/14340.cc: New.
* testsuite/23_containers/vector/14340.cc: New.
2004-05-17 Douglas Gregor <gregod@cs.rpi.edu>
PR libstdc++/14340
* include/debug/safe_iterator.h (_Safe_iterator converting
constructor): Only allow declaration to instantiate when the
incoming _Safe_iterator has exactly the right iterator type.
2004-05-17 Jonathan Wakely <redi@gcc.gnu.org>
* include/bits/boost_concept_check.h: Fix old attribute syntax.
* testsuite/23_containers/map/modifiers/swap.cc: Define operator<
to pass concept-checks.
* testsuite/23_containers/multimap/modifiers/swap.cc: Same.
* testsuite/23_containers/set/modifiers/swap.cc: Same.
* testsuite/23_containers/multiset/modifiers/swap.cc: Same.
2004-05-16 Paolo Carlini <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-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-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.
* testsuite/Makefile.am: Add files.
* testsuite/Makefile.in: Regenerated.
* testsuite/abi_check.cc: Move and modify code into...
* testsuite/testsuite_abi.cc: Add.
* testsuite/testsuite_abi.h: Add.
* docs/html/17_intro/TODO: Update.
* include/bits/stl_pair.h: Format.
2004-05-06 Matthias Klose <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.
2004-05-03 Andreas Tobler <a.tobler@schweiz.ch>
* acinclude.m4: Replace -W with more speaking -Wextra.
* configure: Rebuilt.
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.
2004-04-29 Paolo Carlini <pcarlini@suse.de>
* src/locale.cc (locale::operator==): Always avoid constructing
locale::name(), directly compare pairs of _M_names.
2004-04-26 Paolo Carlini <pcarlini@suse.de>
* include/bits/istream.tcc: Fix comment.
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<>&,
basic_string<>&, _CharT)): Use a temporary buffer, thus
avoiding reallocation for common case.
* include/bits/basic_string.tcc (_S_construct(_InIterator,
_InIterator, const _Alloc&, input_iterator_tag)): Tweak size
of temporary buffer to a power of two.
* testsuite/27_io/basic_istream/getline/char/4.cc: Add comment.
2004-04-25 Paolo Carlini <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)
* include/bits/istream.tcc (basic_istream<>::getline(char_type*,
streamsize, char_type)): Use traits::find/copy in a loop to speed
up greatly the function in the common case (I/O buffer size >> 1).
2004-04-24 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_istream/getline/char/4.cc: New.
* include/bits/istream.tcc (getline(basic_istream<>&,
basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead
of sbumpc(), consistently with the other functions, thus also
dealing correctly with the case of exceeded string::max_size().
2004-04-24 Matthias Klose <doko@debian.org>
Jonathan Wakely <cow@compsoc.man.ac.uk>
* docs/html/configopts.html: Fix reference to allocator config option.
2004-04-23 Andrew Pinski <pinskia@physics.uc.edu>
* linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also.
* configure: Regenerate.
2004-04-23 Daniel Jacobowitz <drow@mvista.com>
PR libstdc++/15047, libstdc++/11610
* testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download.
(libstdc++_init): Don't pass outdir to v3-copy-files.
2004-04-21 Paolo Carlini <pcarlini@suse.de>
* 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.
* testsuite/27_io/basic_stringbuf/4.cc: Same.
* testsuite/27_io/basic_stringbuf/1.cc: Same.
* testsuite/27_io/basic_stringbuf/2.cc: Same.
* testsuite/27_io/basic_streambuf/2.cc: Same.
* testsuite/27_io/basic_ostringstream/2.cc: Same.
* testsuite/27_io/basic_ostream/2.cc: Same.
* testsuite/27_io/basic_ofstream/2.cc: Same.
* testsuite/27_io/basic_istringstream/2.cc: Same.
* testsuite/27_io/basic_istream/2.cc: Same.
* testsuite/27_io/basic_iostream/2.cc: Same.
* testsuite/27_io/basic_ios/2.cc: Same.
* testsuite/27_io/basic_ifstream/2.cc: Same.
* testsuite/27_io/basic_fstream/2.cc: Same.
* testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx.
* testsuite/21_strings/basic_string/capacity/1.cc: Don't compare
unsigned against zero.
* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/capacity/char/1.cc: Same.
* testsuite/18_support/new_delete_placement.cc: Initialize
variables before first use.
* testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same.
* testsuite/21_strings/char_traits/requirements/char/1.cc: Same.
* testsuite/21_strings/char_traits/requirements/short/1.cc: Same.
* testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
Same.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
exceptions_badbit_throw.cc: Same.
* testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
Same.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
exceptions_failbit_throw.cc: Same.
* testsuite/27_io/types/2.cc: Same.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary
file name.
* testsuite/27_io/fpos/14775.cc: Same.
2004-04-19 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/15002 (partial)
* include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
Special case __n2 == 1, not calling traits_type::assign/copy.
2004-04-17 Benjamin Kosnik <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/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
idiom that other containers use.
* testsuite/23_containers/vector/bool/clear_allocator.cc: New.
2004-04-16 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/14975
* include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt
in case of error.
* testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New.
2004-04-16 Paolo Carlini <pcarlini@suse.de>
* acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not
used anymore.
* config.h.in: Regenerate.
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-14 Zack Weinberg <zack@codesourcery.com>
* testsuite/Makefile.am: Add definition of AM_CXXFLAGS.
Change definition of CXX to use $(shell) instead of backticks.
* testsuite/Makefile.in: Regenerate.
2004-04-12 Dhruv Matani <dhruvbird@gmx.net>
* testsuite/performance/20_util/allocator/list_sort_search.cc:
Minor formatting fixes.
* testsuite/performance/20_util/allocator/map_mt_find.cc:
Likewise.
2004-04-12 Paolo Carlini <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
_M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
* config/locale/gnu/time_members.cc
(__timepunct<char>::_M_initialize_timepunct,
__timepunct<wchar_t>::_M_initialize_timepunct): Ditto.
* testsuite/22_locale/time_get/get_monthname/char/4.cc: New.
* testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New.
* testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk.
* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_date/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_date/char/2.cc: Ditto.
* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto.
* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_get/get_time/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_time/char/2.cc: Ditto.
* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_get/get_year/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_put/put/char/1.cc: Ditto.
* testsuite/22_locale/time_put/put/char/2.cc: Ditto.
* testsuite/22_locale/time_put/put/char/3.cc: Ditto.
* testsuite/22_locale/time_put/put/char/4.cc: Ditto.
* testsuite/22_locale/time_put/put/char/5.cc: Ditto.
* testsuite/22_locale/time_put/put/char/6.cc: Ditto.
* testsuite/22_locale/time_put/put/char/7.cc: Ditto.
* testsuite/22_locale/time_put/put/char/8.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto.
* testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos.
2004-04-07 Paolo Carlini <pcarlini@suse.de>
* 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-06 Benjamin Kosnik <bkoz@redhat.com>
Fixups for EDG front end.
* include/ext/rope: Instead of non-existent function
_Data_allocate, use allocator's allocate. Use this.
(namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
enumerations from _Rope_RopeRep here.
* include/ext/ropeimpl.h: Same.
* src/ext-inst.cc (_S_min_len): Fix up definition.
* config/locale/gnu/ctype_members.cc: Qualify base class members
with this.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/gnu/messages_members.h: Same.
* config/locale/generic/messages_members.h: Same.
* src/ctype.cc: Same.
* include/bits/codecvt.h: Same.
* include/bits/boost_concept_check.h: Declare.
(__error_type_must_be_an_unsigned_integer_type): Remove this.
(__error_type_must_be_an_integer_type): Remove this.
(__error_type_must_be_a_signed_integer_type): Remove this.
* config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
* libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
specification to definition.
(__cxa_allocate_exception): Same.
* libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
(__cxa_get_globals): Same.
* libsupc++/del_op.cc: Add comment about freestanding.
2004-04-05 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
The critical section is actually very small, only two assignments.
2004-04-04 Paolo Carlini <pcarlini@suse.de>
Petur Runolfsson <peturr02@ru.is>
* testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New,
adapted from libstdc++/11378.
2004-04-03 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.
* testsuite/performance/20_util/allocator/list_sort_search.cc:
Reorder and renumber the tests consistently with the other testfiles.
* testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
* testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
* testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
2004-04-02 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
Rearrange arithmetic to avoid computing two divisions at
each deallocation.
2004-04-01 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-04-01 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/14775
* acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
to _GLIBCXX_RES_LIMITS.
(GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
HAVE_LIMIT_*.
* testsuite/testsuite_hooks.h: Declare set_file_limit.
* testsuite/testsuite_hooks.cc: Define it, using getrlimit
and setrlimit(RLIMIT_FSIZE).
* testsuite/27_io/fpos/14775.cc: New.
* config.h.in: Regenerate.
* configure: Likewise.
2004-03-31 Paolo Carlini <pcarlini@suse.de>
* 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-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
(__enc_traits::_M_destroy): New.
(__enc_traits::~__enc_traits): Use it.
(__enc_traits::operator=): Use _M_destroy, _M_init.
(__enc_traits::__enc_traits): Same.
2004-03-27 Petur Runolfsson <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
default argument in constructors.
(_Rb_tree::_M_empty_initialize): Remove.
2004-03-25 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
* testsuite/23_containers/set/operators/1_neg.cc: Same.
2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
* include/bits/cpp_type_traits.h: Changed __is_pod
completely. Now, it does not use any of the previous type_traits
to detect the pod types, and it also detects function pointers as
POD types.
* include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
which encapsulates the internal implementation of an rb_tree. Made
the allocator a base class of this class instead of the rb_tree,
which was not conforming. This _Rb_tree_impl class is also
specialized on whether the _Compare parameter is a POD type or
not. If so, then it maintains the comparison function as a data
member, otherwise it makes the _Compare parameter a base class of
itself. Also, _M_key_compare is now a function instead of a data
member, so that the above trick can work properly. Delegated the
initialization of the other data members to this newly created
class. Also, now other member functions of rb_tree must refer to
_M_key_compare as _M_impl._M_key_compare(). The other data members
(*) can be referenced to as _M_impl.(*), where
(*) includes _M_header, and _M_node_count.
2004-03-25 Paolo Carlini <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
derive from the allocator, instead of the list deriving from the
allocator class, which was not conformant. Changed all references
from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
as above (changed all references to the concerned variables).
2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
* include/bits/stl_deque.h: Created a _Deque_impl class and made
it derive from the allocator, instead of the deque deriving from
the allocator class, which was not conformant. Changed all
references to the _M_start, _M_finish, _M_map, and _M_map_size to
_M_impl.*.
(_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
qualification in 2 places where it was missing.
(_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
above.
* include/bits/deque.tcc: Same as above (changed all references to
the concerned variables).
2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
* include/bits/stl_vector.h: Created a _Vector_impl class and made
it derive from the allocator, instead of the _Vector_base class,
deriving from the allocator which was not conformant. Changed all
references to the _M_start, _M_finish, and _M_end_of_storage to
_M_impl.*.
* include/bits/vector.tcc: Same as above (changed all references
to the concerned variables).
2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
* testsuite/23_containers/deque/cons/clear_allocator.cc: New.
* testsuite/23_containers/list/cons/clear_allocator.cc: New.
* testsuite/23_containers/vector/cons/clear_allocator.cc: New.
2004-03-24 Dhruv Matani <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