OSDN Git Service

2004-11-08 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index c87cda9..d8740bd 100644 (file)
@@ -1,3 +1,739 @@
+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>