+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
+ warning from IA64 assembler.
+
+2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
+ function call __builtin_ctz instead of the while loop.
+ (allocate) -> If condition has __builtin_expect.
+ (deallocate) -> Ditto.
+ Renamed a few left-over variables and typedefs according to the
+ C++STYLE mentioned in the documentation.
+ Protected calls to __gthread* by __gthread_active_p(), whose value
+ is cached in the local variable __threads_active.
+
+2004-03-24 Felix Yen <fwy@alumni.brown.edu>
+
+ * testsuite/performance/20_util/allocator/producer_consumer.cc:
+ Use linear algorithm for producer.
+
+2004-03-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
+ __mt_alloc<>::deallocate): Avoid redundant conditionals.
+
+2004-03-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.h: Tweaks for 80 column.
+ (__numpunct_cache::_M_cache): Move to locale_facets.tcc.
+ (__moneypunct_cache::_M_cache): Same.
+ (num_get): Don't inherit from __num_base.
+ (num_put): Same.
+ (money_get): Don't inherit from money_base.
+ (money_put): Same.
+ (__timepunct::_M_am_pm_format): New.
+ (time_get::_M_extract_num): Return iterator, use ios_base as argument.
+ (time_get::_M_extract_name): Same.
+ (time_get::_M_extract_via_format): Same.
+ * include/bits/locale_facets.tcc: Tweaks for 80 column.
+ Use _M_getloc instead of getloc.
+ * testsuite/22_locale/money_put/put/char/9780-3.cc: New.
+ * testsuite/22_locale/num_put/put/char/9780-2.cc: New.
+ * testsuite/22_locale/time_put/put/char/9780-1.cc: New.
+
+2004-03-22 Paolo Carlini <pcarlini@suse.de>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
+ * configure: Regenerate.
+ * config/allocator/pool_allocator_base.h: New.
+ * include/ext/pool_allocator.h: Convert to a standard-conforming
+ allocator.
+ * src/allocator.cc: Tweak instantiations.
+ * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
+ * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
+ * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
+ * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
+ * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
+ * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
+
2004-03-22 Hans-Peter Nilsson <hp@axis.com>
* config/cpu/cris/atomicity.h (__atomic_add): Remove "static
* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
- Likewise.
+ Likewise.
2004-03-20 Paolo Carlini <pcarlini@suse.de>
* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is
new_allocator for all hosts.
* configure: Regenerate.
-
+
2004-03-16 Paolo Carlini <pcarlini@suse.de>
* testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers.
* testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
-
+
2004-03-15 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_get<>::_M_extract):
Adjust the logic underlying the parsing of symbol to deal
correctly with an optional sign component (i.e., when either
- negative_sign or positive_sign is empty)
+ negative_sign or positive_sign is empty)
* testsuite/22_locale/money_get/get/char/19.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
* include/bits/allocator.h: Include c++allocator.h.
* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
* aclocal.m4: Regenerate.
- * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
+ * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
* configure: Regenerate.
* include/Makefile.am (host_headers_extra): Add c++allocator.h.
* include/Makefile.in: Regenerate.
* testsuite/20_util/allocator/14176.cc: New.
* include/ext/mt_allocator.h: Formatting fixes.
-
+
2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
* include/Makefile.am (ext_headers): Add
* include/Makefile.in: Regenerate.
* docs/html/ext/ballocator_doc.txt: New file.
* include/ext/bitmap_allocator.h: New file.
- * testsuite/performance/20_util/allocator/list_sort_search.cc: Add
+ * testsuite/performance/20_util/allocator/list_sort_search.cc: Add
test.
* testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
* testsuite/performance/20_util/allocator/producer_consumer.cc: Add
* testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
-
+
PR c++/13658
* testsuite/23_containers/deque/modifiers/swap.cc: New.
* testsuite/23_containers/list/modifiers/swap.cc: New.
* testsuite/23_containers/multiset/modifiers/swap.cc: New.
* testsuite/23_containers/set/modifiers/swap.cc: New.
* testsuite/23_containers/vector/modifiers/swap.cc: New.
-
+
2004-03-08 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/12658
* include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
Remove redundant conditional on __str.size().
-
+
2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/allocator.h: Switch defaults to mt_alloc.
PR libstdc++/12658
* src/locale_init.cc (locale::locale): Lock critical regions with
external mutexes.
- (locale::global): Same.
- * include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
+ (locale::global): Same.
+ * include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
Add in once bits for cases without __GTHREAD_MUTEX_INIT.
(__glibcxx_mutex_lock): Same.
* config/linker-map.gnu: Remove types in the signature of atomic
exports, as they may vary.
-
+
2004-03-06 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc: Tweak the comment preceding
* testsuite/23_containers/multiset/insert/1.cc: Test result string.
* testsuite/23_containers/bitset/invalidation/1.cc: Main always
- returns 0.
+ returns 0.
* testsuite/23_containers/deque/invalidation/4.cc: Same.
* testsuite/23_containers/list/invalidation/1.cc: Same.
* testsuite/23_containers/list/invalidation/2.cc: Same.
* scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
CXXFLAGS_save.
* testsuite/lib/libstdc++.exp: Don't add it conditionally to
- DEFAULT_CXXFLAGS.
+ DEFAULT_CXXFLAGS.
* testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
from the dg-options.
* testsuite/23_containers/vector/invalidation/1.cc: Likewise.
* testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
* testsuite/22_locale/ctype/is/char/2.cc: Same.
* testsuite/thread/pthread7-rope.cc: Same.
- * testsuite/thread/pthread6.cc: Same.
- * testsuite/thread/pthread5.cc: Same.
- * testsuite/thread/pthread4.cc: Same.
+ * testsuite/thread/pthread6.cc: Same.
+ * testsuite/thread/pthread5.cc: Same.
+ * testsuite/thread/pthread4.cc: Same.
* testsuite/thread/pthread1.cc: Same.
* testsuite/ext/rope.cc: Same.
* testsuite/ext/hash_set.cc: Same.
- * testsuite/ext/hash_map.cc: Same.
+ * testsuite/ext/hash_map.cc: Same.
* testsuite/ext/concept_checks.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
* testsuite/25_algorithms/unique/2.cc: Same.
* testsuite/25_algorithms/unique/1.cc: Same.
* testsuite/25_algorithms/rotate.cc: Same.
* testsuite/25_algorithms/min_max.cc: Same.
- * testsuite/25_algorithms/equal.cc: Same.
+ * testsuite/25_algorithms/equal.cc: Same.
* testsuite/24_iterators/rel_ops.cc: Same.
* testsuite/24_iterators/iterator.cc: Same.
* testsuite/24_iterators/insert_iterator.cc: Same.
* testsuite/23_containers/vector/modifiers/1.cc: Same.
* testsuite/23_containers/vector/invalidation/4.cc: Same.
* testsuite/23_containers/vector/invalidation/3.cc: Same.
- * testsuite/23_containers/vector/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/2.cc: Same.
* testsuite/23_containers/vector/invalidation/1.cc: Same.
* testsuite/23_containers/vector/element_access/1.cc: Same.
* testsuite/23_containers/vector/cons/6513.cc: Same.
* testsuite/23_containers/queue/members/7157.cc: Same.
* testsuite/23_containers/priority_queue/members/7161.cc: Same.
* testsuite/23_containers/multiset/invalidation/2.cc: Same.
- * testsuite/23_containers/multiset/invalidation/2.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/2.cc: Same.
* testsuite/23_containers/multiset/insert/1.cc: Same.
* testsuite/23_containers/multimap/invalidation/2.cc: Same.
* testsuite/23_containers/multimap/invalidation/2.cc: Same.
* testsuite/23_containers/list/invalidation/4.cc: Same.
* testsuite/23_containers/list/invalidation/3.cc: Same.
* testsuite/23_containers/list/invalidation/2.cc: Same.
- * testsuite/23_containers/list/invalidation/1.cc: Same.
+ * testsuite/23_containers/list/invalidation/1.cc: Same.
* testsuite/23_containers/list/cons/9.cc: Same.
* testsuite/23_containers/list/cons/8.cc: Same.
* testsuite/23_containers/list/cons/7.cc: Same.
* acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
* config.h.in: Regenerate.
* configure: Same.
-
+
2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
Support autoconf 2.59
* docs/html/18_support/howto.html: Add bit about writing to
stderr, mostly by Zack.
-
+
2004-03-01 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_get<>::_M_extract,
and decimal_point; tweak a bit.
* testsuite/22_locale/num_get/get/char/15.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/15.cc: New.
-
+
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
num_get<>::_M_extract_int): Reorder some conditionals.
22.2.6.3, p3 for the thousands separators; tweak a bit.
* testsuite/22_locale/money_get/get/char/15.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/15.cc: New.
-
+
2004-03-01 David Billinghurst <David.Billinghurst@riotinto.com>
- * testsuite/lib/libstdc++.exp (v3-list-tests): Use
+ * testsuite/lib/libstdc++.exp (v3-list-tests): Use
testsuite_files from correct multilib blddir when running
testsuite.
* testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
2004-02-27 Eric Christopher <echristo@redhat.com>
- Phil Edwards <phil@codesourcery.com>
+ Phil Edwards <phil@codesourcery.com>
* testsuite/22_locale/collate/compare/wchar_t/2.cc,
testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
* testsuite/lib/libstdc++.exp: Load target-supports.exp.
2004-02-27 Phil Edwards <phil@codesourcery.com>
- Eric Christopher <echristo@redhat.com>
+ Eric Christopher <echristo@redhat.com>
* testsuite/config/default.exp: Update with comments.
(${tool}_target_compile): New wrapper routine.
2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/10246
- * libsupc++/Makefile.am: Use libiberty demangler.
- (c_sources): Add cp-demangle.c.
- * libsupc++/Makefile.in: Regenerate.
- * src/Makefile.am (sources): Remove demangle.cc.
- * src/Makefile.in: Regenerate.
- * include/Makefile.am (bits_headers): Move demangle.h.
+ * libsupc++/Makefile.am: Use libiberty demangler.
+ (c_sources): Add cp-demangle.c.
+ * libsupc++/Makefile.in: Regenerate.
+ * src/Makefile.am (sources): Remove demangle.cc.
+ * src/Makefile.in: Regenerate.
+ * include/Makefile.am (bits_headers): Move demangle.h.
(ext_headers): ...here.
- * include/Makefile.in: Regenerate.
- * include/bits/demangle.h: Move...
+ * include/Makefile.in: Regenerate.
+ * include/bits/demangle.h: Move...
* include/ext/demangle.h: ...here.
- * src/demangle.cc: Remove.
+ * src/demangle.cc: Remove.
2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/demangle.h: Add type template parameter to all
- templates with just an Allocator template parameter.
-
+
+ * include/bits/demangle.h: Add type template parameter to all
+ templates with just an Allocator template parameter.
+
2004-02-25 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/atomicity.h: New, forward declarations for __atomic_add
* config/cpu/powerpc/atomicity.h: Same.
* config/cpu/s390/atomicity.h: Same.
* config/cpu/sparc/atomicity.h: Same.
-
+
* src/Makefile.am (host_sources): Add atomicity.cc.
(atomicity.cc): New rule.
* src/Makefile.in: Regenerate.
* config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
- * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
-
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+
2004-02-25 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/20_util/howto.html, docs/html/20_util/allocator.html,
* libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler):
Only use fputs, not write.
-
+
2004-02-23 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/malloc_allocator.h: Add operators ==, !=.
* include/ext/new_allocator.h: Add operators ==, !=.
* include/ext/mt_allocator.h (__mt_alloc::tune): New.
(__mt_alloc::_S_get_options): New.
- (__mt_alloc::_S_set_options): New.
+ (__mt_alloc::_S_set_options): New.
(__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key.
(__mt_alloc::_S_no_of_bins): To _S_bin_size.
Move functions out of line, simplify, format.
* src/allocator.cc: Simplify explicit instantiations.
* include/bits/allocator.h: Tweak.
-
+
2004-02-22 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_put<>::_M_insert):
avoid multiple reallocations; fix parsing of sign component
according to 22.2.6.1.2, p3.
(money_get<>::do_get(long double&),
- money_get<>::do_get(string_type&)): Update calls of _M_extract.
+ money_get<>::do_get(string_type&)): Update calls of _M_extract.
* src/locale-inst.cc: Add instantiations of
money_get::_M_extract<false> and money_get::_M_extract<true>.
* testsuite/22_locale/money_get/get/char/14.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto.
-
+
2004-02-21 Mark Mitchell <mark@codesourcery.com>
* libsupc++/vterminate.cc
(__basic_file<char>::xwrite): Move to __gnu_internal and make
static.
(__basic_file<char>::xsputn): Update call.
- (__basic_file<char>::xsputn_2): Likewise.
+ (__basic_file<char>::xsputn_2): Likewise.
* config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
Don't declare, now static.
2004-02-08 Richard Henderson <rth@redhat.com>
PR libstdc++/14026
- * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
+ * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
uncaughtExceptions during nested catch rethrow.
* testsuite/18_support/14026.cc: New.