summaryrefslogtreecommitdiffstats
path: root/contrib/libstdc++/ChangeLog-2004
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/libstdc++/ChangeLog-2004')
-rw-r--r--contrib/libstdc++/ChangeLog-20043957
1 files changed, 3957 insertions, 0 deletions
diff --git a/contrib/libstdc++/ChangeLog-2004 b/contrib/libstdc++/ChangeLog-2004
new file mode 100644
index 0000000..02c456f
--- /dev/null
+++ b/contrib/libstdc++/ChangeLog-2004
@@ -0,0 +1,3957 @@
+2004-12-29 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * include/bits/vector.tcc (erase(iterator, iterator),
+ operator=, _M_assign_aux(_ForwardIterator, _ForwardIterator,
+ forward_iterator_tag)): Qualify all calls to std::copy().
+
+2004-12-23 Paolo Carlini <pcarlini@suse.de>
+
+ Minimal fixes for -fno-exceptions.
+ * testsuite/testsuite_abi.cc (get_symbol, examine_symbol,
+ create_symbols): Use __throw_exception_again, instead of
+ plain throw.
+ * 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-06 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/18837
+ * testsuite/testsuite_performance.h: Fix mallinfo macros for
+ hpux.
+
+2004-12-06 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h
+ (do_out, do_unshift, do_in): Remove redundant typedef.
+
+2004-11-24 Jonathan Wakely <redi@kayari.org>
+
+ * docs/html/ext/howto.html: Fix incorrect link.
+ * docs/html/documentation.html: Regenerate.
+
+2004-11-18 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (time_get<>::do_get_weekday,
+ time_get<>::do_get_monthname): Absolutely avoid dereferencing
+ end iterators.
+
+ * include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
+ Minor tweak.
+
+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-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>
+ Lothar Werzinger <lothar@xcerla.com>
+
+ PR libstdc++/17664
+ * src/debug.cc: Include concurrence, use mutexes.
+ (_Safe_iterator_base::_M_attach): Here.
+ (_Safe_iterator_base::_M_detach): Here.
+
+2004-11-08 Benjamin Kosnik <bkoz@redhat.com>
+
+ 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-08 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-07 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-11-07 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-11-04 Release Manager
+
+ * GCC 3.4.3 released.
+
+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-28 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (_M_mutate): Do not reallocate
+ unnecessarily when _M_rep() == &_S_empty_rep() and __new_size
+ == capacity() (== 0): is ok to just leave everything unchanged.
+
+2004-10-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.
+ * aclocal.m4: Regenerate.
+ * configure: Likewise.
+ * config.h.in: Likewise.
+
+2004-10-28 Paolo Carlini <pcarlini@suse.de>
+
+ * README: Remove obsolete entry about include/c_shadow.
+
+2004-10-25 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR other/18138
+ * testsuite/lib/libstdc++.exp: Accept more than one multilib libgcc.
+
+2004-10-14 Paolo Carlini <pcarlini@suse.de>
+
+ * include/std/std_memory.h (__get_temporary_buffer): Don't use
+ INT_MAX, prefer numeric_limits<ptrdiff_t>::max(), ok on 64-bit
+ platforms too.
+ * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust dg-error
+ line numbers.
+
+2004-10-11 Joachim Kuebart <kuebart@mathematik.uni-ulm.de>
+ Paolo Carlini <pcarlini@suse.de>
+
+ * src/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 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-10 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/sstream.tcc (seekpos): In case of success, just
+ return __sp.
+
+2004-10-07 Roger Sayle <roger@eyesopen.com>
+
+ PR libstdc++/17850
+ * configure.ac: Newlib does not provide strtold.
+ * configure: Regenerate.
+
+2004-10-05 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_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-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-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-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-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-02 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_filebuf/cons/char/1.cc: New.
+ * testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
+
+2004-10-02 Paolo Carlini <pcarlini@suse.de>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/testsuite_io.h (class constraint_buf): New, extended
+ and templatized version of constraint_filebuf; add typedefs for
+ streambuf/stringbuf/filebuf and wchar_t counterparts.
+
+2004-09-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/16848
+ * include/Makefile.am (ext_headers): Remove demangle.h.
+ * include/Makefile.in: Regenerate.
+ * include/ext/demangle.h: Remove.
+
+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>
+ Magnus Fromreide <magfr@lysator.liu.se>
+
+ * include/bits/boost_concept_check.h (struct _SequenceConcept):
+ Remove wrong requirement, i.e., not present in Table 67.
+
+2004-09-20 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in
+ instantiation of set and multiset (functor param given as int).
+
+2004-09-20 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * include/bits/stl_algo.h (remove): Remove too restrictive
+ concept-check.
+
+2004-09-19 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/fstream.tcc (xsgetn): Slightly tweak conditional,
+ as per Nathan's original suggestion.
+
+2004-09-19 Nathan Myers <ncm@cantrip.org>
+
+ * include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix
+ for 11722: copy can replace move; the common case is __avail == 0.
+
+2004-09-19 Paolo Carlini <pcarlini@suse.de>
+
+ 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-17 Paolo Carlini <pcarlini@suse.de>
+
+ * src/localename.cc (locale::_Impl::_Impl): Slightly improve
+ the algorithm used to name the categories.
+
+2004-09-13 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-09-08 Benjamin Kosnik <bkoz@redhat.com>
+ Simon Richter <Simon.Richter@hogyros.de>
+
+ PR libstdc++/16715
+ * include/bits/istream.tcc: Add extern template for iostream
+ char and wchar_t instantiations.
+
+2004-09-08 Benjamin Kosnik <bkoz@redhat.com>
+ Leland Wang <llwang@infor.org>
+
+ PR libstdc++/17259
+ * include/ext/ropeimpl.h (rope::_S_compare): Use
+ _Rope_constants::_S_leaf.
+
+2004-09-06 Release Manager
+
+ * GCC 3.4.2 released.
+
+2004-08-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/ext/pool_allocator.h: Rename __pool_base to
+ __pool_alloc_base.
+ * src/allocator.cc: Same.
+ * config/linker-map.gnu: Same.
+
+2004-08-28 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/17038 (partial)
+ * include/bits/locale_facets.tcc (time_put<>::do_put): Increase
+ __maxlen to 128.
+ * config/locale/generic/time_members.cc (_M_put): Always null
+ terminate __s.
+ * config/locale/gnu/time_members.cc (_M_put): Likewise.
+ * testsuite/22_locale/time_put/put/char/17038.cc: New.
+ * testsuite/22_locale/time_put/put/wchar_t/17038.cc: New.
+
+2004-08-27 Matthias Klose <doko@debian.org>
+
+ * configure.host: For mips*-*-linux* update cpu_include_dir
+ after atomicity_dir is set.
+
+2004-08-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-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-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-20 Matthias Klose <doko@debian.org>
+
+ * config/abi/s390-linux-gnu/baseline_symbols.txt: New.
+
+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 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/performance/20_util/allocator/insert.cc: For std::map
+ instantiate the allocator for a correct pair type.
+ * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
+ * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
+ * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
+ * testsuite/performance/20_util/allocator/producer_consumer.cc:
+ Likewise.
+
+ * testsuite/performance/20_util/allocator/list_sort_search.cc: Very
+ minor formatting fixes.
+
+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>
+
+ * 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-13 Paolo Carlini <pcarlini@suse.de>
+
+ * src/debug.cc (_Error_formatter::_M_print_string): Fix thinko,
+ memmove is not needed, memcpy suffices.
+
+2004-08-12 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-08 Jonathan Wakely <redi@gcc.gnu.org>
+ Paolo Carlini <pcarlini@suse.de>
+
+ * src/debug.cc (_Error_formatter::_M_print_string): In order
+ to print individual words from __string, _M_format_word can't
+ be called since may be just sprintf, thus ignoring completely
+ __n: instead, use memmove and append '\0' by hand.
+
+2004-07-30 Paolo Carlini <pcarlini@suse.de>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/12658 (continued)
+ * src/locale_init.cc (locale::locale, locale::global): Use
+ a single locale_mutex instead of two separate mutexes.
+
+2004-07-30 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/22_locale/locale/cons/12658_thread.cc: Xfail: due to
+ a bug in glibcs older than 2004-07-16, it can unpredictably fail
+ irrespective of the correctness of libstdc++.
+
+2004-07-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/locale_init.cc: Use __gnu_cxx::lock.
+
+2004-07-30 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/22_locale/num_put/put/char/14220.cc: Increase the value
+ of precision: 10 is too small to actually trigger the bug.
+ * testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise.
+
+2004-07-30 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>
+
+ PR libstdc++/16813
+ * include/debug/map.h (insert(_InputIterator, _InputIterator)):
+ Fix typo.
+ * testsuite/23_containers/map/insert/16813.cc: New.
+
+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>
+
+ * 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-07-14 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/16401
+ * include/bits/sstream.tcc (overflow): When reallocating _M_string
+ use an exponential grow policy.
+ * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New.
+ * testsuite/performance/27_io/stringbuf_overflow.cc: New.
+
+2004-07-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/concurrence.h: Tweak comments.
+
+2004-07-12 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-07-12 Brad Spencer <spencer@infointeractive.com>
+
+ * include/ext/mt_allocator.h: Handle allocations at static
+ initialization that happen before _S_options is (automatically)
+ constructed; set _S_init even if _M_force_new is true.
+
+2004-07-12 Paul Brook <paul@codesourcery.com>
+
+ * include/bits/concurrence.h: Still create mutex object when
+ single-threaded.
+
+2004-07-12 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.
+
+ * src/allocator.cc: Move all instantiations...
+ * src/allocator-inst.cc: ...here.
+
+2004-07-12 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-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-06 Anssi Hannula <anssi.hannula@mbnet.fi>
+
+ PR libstdc++/15928
+ * crossconfig.m4: Add in bits for djgpp.
+ * configure: Regenerate.
+
+2004-07-06 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.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2004-07-06 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-07-06 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-07-01 Release Manager
+
+ * GCC 3.4.1 released.
+
+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-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 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/debug/formatter.h (__gnu_debug::_Error_formatter):
+ Remove copy constructor and assignment operator.
+
+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-21 Loren J. Rittle <ljrittle@acm.org>
+
+ * config/linker-map.gnu: Use wildcards for
+ __basic_file::sys_open(FILE*, _Ios_Openmode).
+
+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 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-18 Paolo Carlini <pcarlini@suse.de>
+ Matt Austern <austern@apple.com>
+
+ * testsuite/ext/rope/3.cc: New.
+
+2004-06-17 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-17 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-11 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-11 Dhruv Matani <dhruvbird@gmx.net>
+ Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/testsuite_performance.h
+ (resource_counter::allocated_memory): Make it return the right
+ number of bytes requested by the allocators/application. This is
+ the sbrk+mmaped memory.
+
+2004-06-10 Benjamin Kosnik <bkoz@redhat.com>
+
+ * crossconfig.m4: Remove signbit, signbitf, signbitl.
+ * linkage.m4: Comment LIBMATHOBJS, tweak others. AC_DEFINES for
+ builtin math functions instead of AC_DEFINE_UNQUOTED.
+ * configure: Regenerate.
+
+2004-06-10 Benjamin Kosnik <bkoz@redhat.com>
+
+ * 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-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-31 Richard B. Kreckel <Richard.Kreckel@Framatome-ANP.com>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/14600
+ * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
+ * include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
+ * config/io/basic_file_stdio.cc (__basic_file::file): New.
+ * config/io/basic_file_stdio.h: Define.
+
+2004-05-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/15675
+ * docs/html/documentation.html: Update doxygen links for 3.4.0.
+
+2004-05-30 Jan Beulich <jbeulich@novell.com>
+
+ * scripts/create_testsuite_files: Tweak.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor
+ tweaks.
+
+2004-05-30 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write
+ allocation loop which removes blocks from the global free list
+ from O(N) to O(1) when the required blocks are <= the number
+ available.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
+ Consistently update __bin._M_free[0].
+ (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use
+ __bin._M_free[0] to simplify the while loop (i.e., the number
+ of iterations becomes known at the outset).
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
+ The critical section is actually very small, only two assignments.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out
+ some duplicated code.
+ (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used
+ in the single threaded case.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
+ Rearrange arithmetic to avoid computing two divisions at
+ each deallocation.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
+ Streamline the second half, wrapping it in a single
+ '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
+ conditionals inside loops.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h: Uglify consistently names of
+ variables, members and classes; tidy.
+
+2004-05-30 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
+ Deallocation loop rewrote.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
+ __mt_alloc<>::deallocate): Protect two instances of
+ block->thread_id with __GTHREADS.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::tune):
+ Add _M_min_bin, the size in bytes of the smallest bin.
+ (__mt_alloc<>::tune()): Tweak accordingly.
+ (__mt_alloc<>::tune(size_t, ...)): Likewise.
+ (__mt_alloc<>::block_record): Change to a union: members next
+ and thread_id are never used at the same time.
+ (__mt_alloc<>::allocate): Update consistently.
+ (__mt_alloc<>::deallocate): Likewise.
+ (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
+ _S_bin_size for the configurable _M_min_size.
+
+2004-05-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
+ __mt_alloc<>::deallocate): Avoid redundant conditionals.
+
+2004-05-27 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/15565
+ * include/bits/locale_facets.tcc (__int_to_char(unsigned long),
+ __int_to_char(unsigned long long)): Showpos is not relevant
+ for unsigned types.
+ * testsuite/22_locale/num_put/put/char/15565.cc: New.
+ * testsuite/22_locale/num_put/put/wchar_t/15565.cc: New.
+
+ * 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-25 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-25 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/istream.tcc (ignore): Remove redundant line.
+ (readsome): Tidy, closely following 27.6.1.3, p30.
+
+2004-05-25 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/istream.tcc (operator>>(basic_istream<>&,
+ basic_string<>&)): Use a temporary buffer, thus avoiding
+ reallocation for common case.
+ * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
+ New.
+ * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
+ Likewise.
+
+ * include/bits/istream.tcc: Const-ification of a few variables.
+
+ * include/bits/ostream.tcc: Trivial formatting fixes and
+ const-ification of some variables.
+
+2004-05-25 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/15489
+ * scripts/create_testsuite_files: Revert xtype change, add
+ non-GNU bits to do the same thing.
+
+2004-05-24 Benjamin Kosnik <bkoz@redhat.com>
+
+ 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-24 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-24 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-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 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-19 Jan Beulich <jbeulich@novell.com>
+
+ PR libstdc++/15489
+ * scripts/create_testsuite_files: Also find source files through
+ symbolic links.
+
+2004-05-19 Jan Beulich <jbeulich@novell.com>
+
+ PR libstdc++/15488
+ * testsuite/lib/libstdc++.exp: Make test files writable.
+
+2004-05-18 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691.
+
+2004-05-18 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-18 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-18 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * include/ext/enc_filebuf.h: Move concept-check macro to class scope.
+
+2004-05-17 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * include/bits/boost_concept_check.h: Fix old attribute syntax.
+ * 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-15 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/15046
+ * crossconfig.m4: Add C99 math bits for linux crosses.
+ * configure: Regenerate.
+
+2004-05-15 Simon Marshall <simon.marshall@misys.com>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/15090
+ * include/bits/locale_facets.h: Fix for -fno-for-scope.
+ * include/debug/safe_sequence.h: Same.
+ * include/debug/safe_iterator.tcc: Same.
+ * src/debug.cc: Same.
+ * src/locale.cc: Same.
+ * src/locale_init.cc: Same.
+ * src/localename.cc: Same.
+ * config/locale/gnu/ctype_members.cc: Same.
+ * config/locale/gnu/numeric_members.cc: Same.
+ * testsuite/testsuite_abi.cc: Same.
+ * testsuite/testsuite_hooks.cc: Same.
+
+2004-05-15 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/abi.html: Document effect of -fabi-version on value
+ of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c.
+ Fix markup.
+
+2004-05-15 Benjamin Kosnik <bkoz@redhat.com>
+
+ * 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-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-14 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-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-09 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-05-09 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-05-09 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-05-09 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-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-02 Paolo Carlini <pcarlini@suse.de>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+ * config/allocator/pool_allocator_base.h: New.
+ * include/ext/pool_allocator.h: Convert to a standard-conforming
+ allocator.
+ * src/allocator.cc: Tweak instantiations.
+ * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
+ * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
+ * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
+ * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
+ * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
+ * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
+
+2004-04-30 Paolo Carlini <pcarlini@suse.de>
+
+ 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-04-29 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.
+
+2004-04-29 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-29 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/ext/malloc_allocator.h: Fixed the construct function to
+ call global placement new instead of assignment. Added a check
+ after the return from malloc to check whether returned pointer is
+ NULL, and if so, throw std::bad_alloc().
+ * include/ext/debug_allocator.h: Added a check in the deallocate
+ function to check whether the user has passed a NULL pointer or
+ not.
+
+2004-04-29 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/20_util/allocator.html: Add bitmap_allocator links.
+
+2004-04-29 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
+ function call __builtin_ctz instead of the while loop.
+ (allocate) -> If condition has __builtin_expect.
+ (deallocate) -> Ditto.
+ Renamed a few left-over variables and typedefs according to the
+ C++STYLE mentioned in the documentation.
+ Protected calls to __gthread* by __gthread_active_p(), whose value
+ is cached in the local variable __threads_active.
+
+2004-04-29 Felix Yen <fwy@alumni.brown.edu>
+
+ * testsuite/performance/20_util/allocator/producer_consumer.cc:
+ Use linear algorithm for producer.
+
+2004-04-29 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-26 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/istream.tcc: Fix comment.
+
+2004-04-26 Paolo Carlini <pcarlini@suse.de>
+
+ * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl
+ avoid constructing unnecessarily this->name().
+
+2004-04-24 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/thread/pthread7-rope.cc: Update comment to reflect test.
+
+2004-04-24 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-04-24 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.
+
+2004-04-24 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-24 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-24 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-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 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-23 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-21 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-04-21 Paolo Carlini <pcarlini@suse.de>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/12077
+ * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's
+ no way to find out the conversion used by the underlying FILE*.
+ * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New.
+ * testsuite/27_io/objects/char/9.cc: Tweak.
+
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+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-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-09 Andreas Schwab <schwab@suse.de>
+
+ * testsuite/lib/prune.exp (prune_g++_output): Ignore errata
+ warning from IA64 assembler.
+
+2004-03-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/14783
+ * include/bits/stl_tree.h: Adjust initialization list order.
+
+2004-03-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ 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-26 Petur Runolfsson <peturr02@ru.is>
+
+ * testsuite/ext/enc_filebuf/char/13598.cc: New.
+
+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 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-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 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/14676
+ * config/cpu/cris/atomicity.h (__atomic_add): Remove "static
+ inline" and attribute-unused. Qualify parameter __mem with
+ "volatile".
+ (__exchange_and_add): Ditto. Add back memory clobber to asm.
+
+2004-03-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
+
+ PR libstdc++/14647
+ * include/backward/bvector.h (bit_vector): Allocator is in std
+ namespace.
+
+2004-03-20 Paolo Carlini <pcarlini@suse.de>
+
+ * include/std/std_valarray.h: Document DR389 [Ready].
+ * docs/html/ext/howto.html: Add an entry for DR389.
+
+2004-03-19 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/14648
+ * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
+ memory allocation/deallocation calls.
+ * testsuite/ext/14648.cc: New.
+
+2004-03-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ Revert.
+ * configure.ac (AC_PREREQ): Use 2.57.
+ (AM_INIT_AUTOMAKE): Remove -Wno-override.
+
+2004-03-17 David Billinghurst <David.Billinghurst@riotinto.com>
+
+ PR bootstrap/14207
+ Revert patch of 2004-02-17, as it breaks mips-sgi-irix6.5 -o32
+ (Almost certainly a target issue)
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int, money_get<>::do_get): Simplify
+ grouping fidelity conditional.
+
+2004-03-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ Revert dg-require-iconv changes.
+ * testsuite/22_locale/collate/compare/wchar_t/2.cc: Revert.
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
+ * testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
+ * testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
+
+2004-03-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * Merge from mainline.
+
+2004-03-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * 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)
+ * testsuite/22_locale/money_get/get/char/19.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
+
+2004-03-15 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Do not accept an incomplete currency symbol.
+ * testsuite/22_locale/money_get/get/char/18.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/18.cc: New.
+
+2004-03-13 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/allocator: New.
+ * config/allocator/bitmap_allocator_base.h: New.
+ * config/allocator/malloc_allocator_base.h: New.
+ * config/allocator/mt_allocator_base.h: New.
+ * config/allocator/new_allocator_base.h: New.
+ * include/bits/allocator.h: Include c++allocator.h.
+ * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
+ * aclocal.m4: Regenerate.
+ * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
+ * configure: Regenerate.
+ * include/Makefile.am (host_headers_extra): Add c++allocator.h.
+ * include/Makefile.in: Regenerate.
+ * docs/html/configopts.html: Add enable-libstdcxx-allocator.
+
+2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/allocator.h: Revert.
+
+2004-03-12 Paolo Carlini <pcarlini@suse.de>
+
+ * docs/html/ext/howto.html: Add entry for DR 253 [Ready].
+ * include/bits/gslice_array.h: Add comment about DR 253.
+ * include/bits/indirect_array.h: Likewise.
+ * include/bits/mask_array.h: Likewise.
+ * include/bits/slice_array.h: Likewise.
+
+2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * 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
+ ${ext_srcdir}/bitmap_allocator.h .
+ * include/Makefile.in: Regenerate.
+ * docs/html/ext/ballocator_doc.txt: New file.
+ * include/ext/bitmap_allocator.h: New file.
+ * testsuite/performance/20_util/allocator/list_sort_search.cc: Add
+ test.
+ * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
+ * testsuite/performance/20_util/allocator/producer_consumer.cc: Add
+ test for the bitmap_allocator<>.
+ * testsuite/performance/20_util/allocator/insert.cc: Likewise.
+ * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
+ * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
+
+2004-03-11 Paolo Carlini <pcarlini@suse.de>
+
+ * include/std/std_complex.h (pow(const complex&, const _Tp&),
+ pow(const _Tp&, const complex&), pow(const complex&,
+ const complex&)): Fully qualify with std:: a few calls.
+ * testsuite/26_numerics/complex/13450.cc: Minor tweak.
+
+2004-03-11 Steven Bosscher <stevenb@suse.de>
+
+ PR libstdc++/11706
+ * include/c_std/cmath.tcc (__cmath_power): Define inline.
+
+2004-03-10 Kelley Cook <kcook@gcc.gnu.org>
+
+ * configure.ac: Bump AC_PREREQ to 2.59.
+
+2004-03-10 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos.
+
+2004-03-10 Paul Kienzle <pkienzle@nist.gov>
+ Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13450
+ * include/std/std_complex.h (pow(const complex&, const _Tp&),
+ pow(const _Tp&, const complex&)): Use cmath pow only when safe.
+ * testsuite/26_numerics/complex/13450.cc: New.
+
+ * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc.
+ * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix.
+
+2004-03-10 Jerry Quinn <jlquinn@optonline.net>
+
+ PR libstdc++/3247
+ * include/bits/gslice_array.h (gslice_array()): Make public.
+ (operator=(gslice_array)): Make public. Implement.
+ * include/bits/indirect_array.h (indirect_array()): Make public.
+ * include/bits/mask_array.h (mask_array()): Make public.
+ (operator=(mask_array)): Make public. Implement.
+ * include/bits/valarray_array.tcc (__valarray_copy):
+ Comment. Add versions for gslice_array and mask_array.
+ * testsuite/26_numerics/valarray_subset_assignment.cc: New test.
+
+2004-03-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for
+ non-weak systems.
+ * testsuite/23_containers/vector/modifiers/swap.cc: Same.
+ * testsuite/23_containers/set/modifiers/swap.cc: Same.
+ * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
+ * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
+ * testsuite/23_containers/map/modifiers/swap.cc: Same.
+ * testsuite/23_containers/list/modifiers/swap.cc: Same.
+
+ * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
+
+2004-03-08 Benjamin Kosnik <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/map/modifiers/swap.cc: New.
+ * testsuite/23_containers/multimap/modifiers/swap.cc: New.
+ * testsuite/23_containers/multiset/modifiers/swap.cc: New.
+ * testsuite/23_containers/set/modifiers/swap.cc: New.
+ * testsuite/23_containers/vector/modifiers/swap.cc: New.
+
+2004-03-08 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/12658
+ * testsuite/22_locale/locale/cons/12658_thread.cc: New.
+
+2004-03-08 Paolo Carlini <pcarlini@suse.de>
+
+ * docs/html/ext/howto.html: Add entry for DR 103 [WP].
+ * include/bits/stl_multiset.h: Add comment about DR 103.
+ * include/bits/stl_set.h: Likewise.
+
+2004-03-08 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ The value _space_ indicates that at least one space is required
+ at that position.
+ * testsuite/22_locale/money_get/get/char/17.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/17.cc: New.
+
+ * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks.
+ * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
+
+ * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
+ Remove redundant conditional on __str.size().
+
+2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/allocator.h: Switch defaults to mt_alloc.
+
+2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/ext/mt_allocator.h (_S_initialize): If
+ !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
+
+2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/12658
+ * src/locale_init.cc (locale::locale): Lock critical regions with
+ external mutexes.
+ (locale::global): Same.
+ * include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
+ Add in once bits for cases without __GTHREAD_MUTEX_INIT.
+ (__glibcxx_mutex_lock): Same.
+
+ * config/cpu/generic/atomicity.h: Remove
+ _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
+ * src/misc-inst.cc: Move all locking bits out of this file.
+
+ * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
+ * src/misc-inst.cc: Same.
+ * config/cpu/hppa/atomicity.h: Same.
+
+ * config/linker-map.gnu: Remove types in the signature of atomic
+ exports, as they may vary.
+
+2004-03-06 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc: Tweak the comment preceding
+ has_facet: doesn't throw.
+
+2004-03-06 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/22_locale/money_get/get/char/1.cc: Clean up.
+ * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
+ * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
+ * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
+
+2004-03-06 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int, num_get<>::do_get(bool&),
+ __pad<>::_S_pad): Prefer plain operator== to traits::eq().
+ * testsuite/testsuite_character.h (struct __gnu_test::character):
+ Provide operator==.
+ * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char):
+ Likewise.
+
+2004-03-05 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/fpos/14320-2.cc: Remove xfail.
+
+2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/23_containers/multiset/insert/1.cc: Test result string.
+
+ * testsuite/23_containers/bitset/invalidation/1.cc: Main always
+ returns 0.
+ * testsuite/23_containers/deque/invalidation/4.cc: Same.
+ * testsuite/23_containers/list/invalidation/1.cc: Same.
+ * testsuite/23_containers/list/invalidation/2.cc: Same.
+ * testsuite/23_containers/list/invalidation/3.cc: Same.
+ * testsuite/23_containers/list/invalidation/4.cc: Same.
+ * testsuite/23_containers/map/invalidation/2.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/1.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/2.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/1.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/2.cc: Same.
+ * testsuite/23_containers/set/invalidation/1.cc: Same.
+ * testsuite/23_containers/set/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/1.cc: Same.
+ * testsuite/23_containers/vector/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/3.cc: Same.
+ * testsuite/23_containers/vector/invalidation/4.cc: Same.
+
+2004-03-04 Paolo Carlini <pcarlini@suse.de>
+
+ * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
+ CXXFLAGS_save.
+ * testsuite/lib/libstdc++.exp: Don't add it conditionally to
+ DEFAULT_CXXFLAGS.
+ * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
+ from the dg-options.
+ * testsuite/23_containers/vector/invalidation/1.cc: Likewise.
+ * testsuite/23_containers/vector/invalidation/2.cc: Likewise.
+ * testsuite/23_containers/vector/invalidation/3.cc: Likewise.
+ * testsuite/23_containers/vector/invalidation/4.cc: Likewise.
+ * testsuite/23_containers/vector/resize/1.cc: Likewise.
+ * testsuite/26_numerics/complex_value.cc: Likewise.
+ * testsuite/27_io/ios_base/storage/1.cc: Likewise.
+ * testsuite/27_io/ios_base/storage/2.cc: Likewise.
+ * testsuite/27_io/ios_base/storage/3.cc: Likewise.
+ * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
+ * testsuite/27_io/objects/char/5.cc: Likewise.
+ * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
+ * testsuite/backward/11460.cc: Likewise.
+ * testsuite/thread/pthread7-rope.cc: Likewise.
+
+ * testsuite/21_strings/basic_string/compare/char/1.cc: Add
+ missing test variable.
+ * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add
+ missing test variable.
+
+2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/20_util/allocator/1.cc: Provide explicit
+ instantiations for non-weak systems.
+ * testsuite/20_util/binders.cc: Same.
+ * testsuite/20_util/allocator/8230.cc: Same.
+ * testsuite/20_util/allocator/10378.cc: Same.
+ * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
+ * testsuite/22_locale/ctype/is/char/2.cc: Same.
+ * testsuite/thread/pthread7-rope.cc: Same.
+ * testsuite/thread/pthread6.cc: Same.
+ * testsuite/thread/pthread5.cc: Same.
+ * testsuite/thread/pthread4.cc: Same.
+ * testsuite/thread/pthread1.cc: Same.
+ * testsuite/ext/rope.cc: Same.
+ * testsuite/ext/hash_set.cc: Same.
+ * testsuite/ext/hash_map.cc: Same.
+ * testsuite/ext/concept_checks.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
+ * testsuite/25_algorithms/unique/2.cc: Same.
+ * testsuite/25_algorithms/unique/1.cc: Same.
+ * testsuite/25_algorithms/rotate.cc: Same.
+ * testsuite/25_algorithms/min_max.cc: Same.
+ * testsuite/25_algorithms/equal.cc: Same.
+ * testsuite/24_iterators/rel_ops.cc: Same.
+ * testsuite/24_iterators/iterator.cc: Same.
+ * testsuite/24_iterators/insert_iterator.cc: Same.
+ * testsuite/24_iterators/front_insert_iterator.cc: Same.
+ * testsuite/24_iterators/back_insert_iterator.cc: Same.
+ * testsuite/23_containers/vector/resize/1.cc: Same.
+ * testsuite/23_containers/vector/modifiers/2.cc: Same.
+ * testsuite/23_containers/vector/modifiers/1.cc: Same.
+ * testsuite/23_containers/vector/invalidation/4.cc: Same.
+ * testsuite/23_containers/vector/invalidation/3.cc: Same.
+ * testsuite/23_containers/vector/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/1.cc: Same.
+ * testsuite/23_containers/vector/element_access/1.cc: Same.
+ * testsuite/23_containers/vector/cons/6513.cc: Same.
+ * testsuite/23_containers/vector/cons/3.cc: Same.
+ * testsuite/23_containers/vector/cons/2.cc: Same.
+ * testsuite/23_containers/vector/cons/1.cc: Same.
+ * testsuite/23_containers/vector/capacity/8230.cc: Same.
+ * testsuite/23_containers/vector/capacity/1.cc: Same.
+ * testsuite/23_containers/vector/bool/6886.cc: Same.
+ * testsuite/23_containers/stack/members/7158.cc: Same.
+ * testsuite/23_containers/set/invalidation/2.cc: Same.
+ * testsuite/23_containers/set/invalidation/1.cc: Same.
+ * testsuite/23_containers/queue/members/7157.cc: Same.
+ * testsuite/23_containers/priority_queue/members/7161.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/2.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/2.cc: Same.
+ * testsuite/23_containers/multiset/insert/1.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/2.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/2.cc: Same.
+ * testsuite/23_containers/map/operators/1.cc: Same.
+ * testsuite/23_containers/map/invalidation/2.cc: Same.
+ * testsuite/23_containers/map/invalidation/1.cc: Same.
+ * testsuite/23_containers/map/insert/1.cc: Same.
+ * testsuite/23_containers/list/operators/4.cc: Same.
+ * testsuite/23_containers/list/operators/3.cc: Same.
+ * testsuite/23_containers/list/operators/2.cc: Same.
+ * testsuite/23_containers/list/operators/1.cc: Same.
+ * testsuite/23_containers/list/modifiers/3.cc: Same.
+ * testsuite/23_containers/list/modifiers/2.cc: Same.
+ * testsuite/23_containers/list/modifiers/1.cc: Same.
+ * testsuite/23_containers/list/invalidation/4.cc: Same.
+ * testsuite/23_containers/list/invalidation/3.cc: Same.
+ * testsuite/23_containers/list/invalidation/2.cc: Same.
+ * testsuite/23_containers/list/invalidation/1.cc: Same.
+ * testsuite/23_containers/list/cons/9.cc: Same.
+ * testsuite/23_containers/list/cons/8.cc: Same.
+ * testsuite/23_containers/list/cons/7.cc: Same.
+ * testsuite/23_containers/list/cons/6.cc: Same.
+ * testsuite/23_containers/list/cons/5.cc: Same.
+ * testsuite/23_containers/list/cons/4.cc: Same.
+ * testsuite/23_containers/list/cons/3.cc: Same.
+ * testsuite/23_containers/list/cons/2.cc: Same.
+ * testsuite/23_containers/list/cons/1.cc: Same.
+ * testsuite/23_containers/list/capacity/1.cc: Same.
+ * testsuite/23_containers/deque/operators/1.cc: Same.
+ * testsuite/23_containers/deque/invalidation/4.cc: Same.
+ * testsuite/23_containers/deque/invalidation/3.cc: Same.
+ * testsuite/23_containers/deque/invalidation/2.cc: Same.
+ * testsuite/23_containers/deque/invalidation/1.cc: Same.
+ * testsuite/23_containers/deque/cons/2.cc: Same.
+ * testsuite/23_containers/deque/cons/1.cc: Same.
+
+ * src/allocator.cc: Add char, wchar_t instantiations
+ to match extern template declarations in memory.h.
+
+2004-03-03 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_put<>::_M_insert):
+ Fix warning regression.
+
+2004-03-03 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_put<>::_M_insert):
+ Deal properly with empty __digits and negative frac_digits,
+ clean-up a bit.
+
+2004-03-03 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/documentation.html: Regenerate.
+
+2004-03-02 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/14320
+ * include/bits/postypes.h (class streamoff): Remove, now
+ streamoff is just typedef a 64 bit signed integer type.
+ (class fpos): Tweak consistently.
+ * testsuite/27_io/fpos/14320-1.cc: New.
+ * testsuite/27_io/fpos/14320-2.cc: New.
+ * testsuite/27_io/fpos/14320-3.cc: New.
+ * testsuite/27_io/fpos/14320-4.cc: New.
+ * testsuite/27_io/fpos/14320-5.cc: New.
+ * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.
+
+2004-03-02 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Reorganize a bit the main parsing loop, thus early detecting
+ an empty value component.
+ * testsuite/22_locale/money_get/get/char/16.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/16.cc: New.
+
+2004-03-02 Benjamin Kosnik <bkoz@redhat.com>
+
+ Support automake 1.8.2
+ * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
+ * po/Makefile.am (EXTRA_DIST): New.
+ * po/Makefile.in: Regenerate.
+ * Makefile.in: Same.
+ * include/Makefile.in: Same.
+ * libmath/Makefile.in: Same.
+ * libsupc++/Makefile.in: Same.
+ * src/Makefile.in: Same.
+ * testsuite/Makefile.in: Same.
+
+ * include/Makefile.am (${host_builddir}/gthr-posix.h): Use
+ __GXX_WEAK__ instead of SUPPORTS_WEAK.
+ (${host_builddir}/gthr-default.h): Same.
+ (${host_builddir}/gthr.h): Same.
+ * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
+ _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
+ -fno-weak.
+ * aclocal.m4: Regenerate.
+ * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
+ * config.h.in: Regenerate.
+ * configure: Same.
+
+2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
+
+ Support autoconf 2.59
+ * acinclude.m4: Quote correctly.
+ * aclocal.m4: Regenerate.
+ * linkage.m4: Same.
+
+2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/test.html: Add multilib RUNTESTFLAGS example.
+
+ * docs/html/18_support/howto.html: Add bit about writing to
+ stderr, mostly by Zack.
+
+2004-03-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract,
+ money_get<>::do_get(string_type&)): ... and two more.
+
+2004-03-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Fix thinkos in the switch from string_type& to string& as last
+ argument.
+
+2004-03-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
+ Also when parsing exponent sign, first look for thousands_sep
+ and decimal_point; tweak a bit.
+ * testsuite/22_locale/num_get/get/char/15.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/15.cc: New.
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int): Reorder some conditionals.
+
+2004-03-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Consistently with numpunct, enforce the requirements in
+ 22.2.6.3, p3 for the thousands separators; tweak a bit.
+ * testsuite/22_locale/money_get/get/char/15.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/15.cc: New.
+
+2004-03-01 David Billinghurst <David.Billinghurst@riotinto.com>
+
+ * testsuite/lib/libstdc++.exp (v3-list-tests): Use
+ testsuite_files from correct multilib blddir when running
+ testsuite.
+
+2004-02-29 Phil Edwards <phil@codesourcery.com>
+
+ * testsuite/Makefile.am (check-abi, check-abi-verbose): Copy
+ the summary file to the logfile.
+ * testsuite/Makefile.in: Regenerate.
+
+2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
+ volatile.
+ * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
+ __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
+
+2004-02-28 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
+ According to 22.2.3.1, p2, 'units' may be followed by 'e' with
+ no 'decimal-point' in the middle: in this case too we must fix
+ up __found_grouping; slightly tweak.
+ * testsuite/22_locale/num_get/get/char/14.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
+
+2004-02-27 Eric Christopher <echristo@redhat.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/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
+ testsuite/22_locale/collate/hash/wchar_t/2.cc,
+ testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
+ testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
+ testsuite/22_locale/collate/transform/wchar_t/2.cc,
+ testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
+ testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
+ Use dg-require-iconv.
+ * testsuite/lib/libstdc++.exp: Load target-supports.exp.
+
+2004-02-27 Phil Edwards <phil@codesourcery.com>
+ Eric Christopher <echristo@redhat.com>
+
+ * testsuite/config/default.exp: Update with comments.
+ (${tool}_target_compile): New wrapper routine.
+ * testsuite/lib/dg-options.exp: New file, with dg-require-iconv.
+ * testsuite/lib/libstdc++.exp: Update with comments and cosmetic
+ fixes.
+ (load_gcc_lib, v3track): New routines.
+ (v3-init): Rename to libstdc++_init.
+ * testsuite/libstdc++-dg/normal.exp: No longer call v3-init.
+ Move DEFAULT_CXXFLAGS handling into libstdc++_init.
+
+2004-02-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/cpu/hppa/atomicity.h: Include c++config.h to get defines.
+
+ * src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx.
+
+ * config/os/irix/irix5.2/atomicity.h: Merge..
+ * config/os/irix/irix6.5/atomicity.h: Merge..
+ * config/os/irix/atomicity.h: ...into this.
+ * config/os/irix/atomic_word.h: New.
+ * configure.host: Set atomic_word_dir for irix.
+
+ * hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock.
+ * i386/atomicity.h: Same.
+ * m68k/atomicity.h: Same.
+ * sparc/atomicity.h: Same.
+
+2004-02-27 David Edelsohn <edelsohn@gnu.org>
+
+ * config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove
+ static, and inline keywords.
+
+2004-02-27 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate,
+ call reserve on the __tmp_gruping string.
+ (num_get<>::_M_extract_float): Don't append unnecessarily a
+ char() to the returned string.
+ * include/bits/locale_facets.tcc: Trivial reformattings.
+
+2004-02-27 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (money_get<>::_M_extract):
+ Change signature: now takes a plain string&.
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Update consistently the definition; use the moneypunct cache
+ to parse the value; use swap to change __units.
+ (money_get<>::do_get(long double&)): Update call of _M_extract,
+ avoid ctype::narrow, not correct wrt the standard.
+ (money_get<>::do_get(string_type&)): Likewise, update call
+ of _M_extract, use ctype::widen.
+ * src/locale-inst.cc: Tweak instantiations of _M_extract.
+
+2004-02-26 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * testsuite/demangle/abi_examples/01.cc: Expect error -2.
+ * testsuite/demangle/abi_examples/02.cc: Likewise.
+ * testsuite/demangle/regression/cw-11.cc: Likewise.
+ * testsuite/demangle/regression/cw-16.cc: Change two expected
+ results to match libiberty demangler output.
+
+2004-02-26 Benjamin Kosnik <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.
+ (ext_headers): ...here.
+ * include/Makefile.in: Regenerate.
+ * include/bits/demangle.h: Move...
+ * include/ext/demangle.h: ...here.
+ * src/demangle.cc: Remove.
+
+2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ * 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
+ and __exchange_and_add.
+ * config/cpu/generic/atomic_word.h: New, typdef for atomic word.
+ * config/cpu/cris/atomic_word.h: Same.
+ * config/cpu/sparc/atomic_word.h: Same.
+ * include/bits/ios_base.h (_Callback_list::_M_remove_reference):
+ Qualifiy with __gnu_cxx.
+ (_Callback_list::_M_add_reference): Same.
+ * include/bits/locale_classes.h (locale::facet::_M_add_reference): Add.
+ (locale::facet::_M_remove_reference): Same.
+ (locale::_Impl::_M_add_reference): Add.
+ (locale::_Impl::_M_remove_reference): Same.
+ * include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same.
+ (basic_string::_Rep::_M_dispose): Same.
+ * src/ios.cc (ios_base::xalloc): Same.
+ * src/ios_init.cc (ios_base::Init::Init): Same.
+ (ios_base::Init::~Init): Same.
+ * src/locale.cc (locale::id::_M_id): Same.
+ * config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove
+ static, and inline keywords.
+ * config/cpu/alpha/atomicity.h: Same.
+ * config/cpu/cris/atomicity.h: Same.
+ * config/cpu/generic/atomicity.h: Same.
+ * config/cpu/hppa/atomicity.h: Same.
+ * config/cpu/i386/atomicity.h: Same.
+ * config/cpu/ia64/atomicity.h: Same.
+ * config/cpu/m68k/atomicity.h: Same.
+ * config/cpu/mips/atomicity.h: Same.
+ * config/cpu/powerpc/atomicity.h: Same.
+ * config/cpu/s390/atomicity.h: Same.
+ * config/cpu/sparc/atomicity.h: Same.
+
+ * src/Makefile.am (host_sources): Add atomicity.cc.
+ (atomicity.cc): New rule.
+ * src/Makefile.in: Regenerate.
+ * include/Makefile.am (host_headers): Remove host atomicity.h.
+ (host_headers): Add atomic_word.h.
+ (bits_headers): Add bits atomicity.h.
+ Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
+ * include/Makefile.in: Regenerate.
+ * configure.host (atomic_word_dir): Add.
+ * configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change
+ ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
+ * configure: Regenerate.
+ * config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
+
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+
+2004-02-25 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/20_util/howto.html, docs/html/20_util/allocator.html,
+ docs/html/ext/howto.html, docs/html/ext/mt_allocator.html:
+ Fix markup, more <link> tags.
+
+2004-02-25 Carlo Wood <carlo@alinoe.com>
+
+ * bits/demangle.h
+ namespace __gnu_cxx::demangler
+ (session<Allocator>::qualifier_list_Allocator): Add
+ (session<Allocator>::M_qualifier_list_alloc): Add
+ (session<Allocator>::decode_type_with_postfix):
+ Use M_qualifier_list_alloc instead of calling operator new/delete.
+
+2004-02-24 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/14252
+ * include/bits/postypes.h (class streamoff): Add operator++(),
+ operator++(int), operator--() and operator--(int).
+ * testsuite/27_io/fpos/14252.cc: New.
+
+2004-02-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds
+ error in handling of hex constants.
+
+2004-02-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_put<>::_M_insert):
+ Prefer basic_string::append to operator+= and a temporary.
+
+2004-02-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * 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_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):
+ Restructure formatting of value component, first dealing with
+ the non-decimal digits; use reserve.
+
+2004-02-22 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (class money_get): Inherit
+ from money_base too; tweak declaration of _M_extract, now
+ parameterized on _Intl too.
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Update definition to use the cache; call reserve on __res to
+ avoid multiple reallocations; fix parsing of sign component
+ according to 22.2.6.1.2, p3.
+ (money_get<>::do_get(long double&),
+ money_get<>::do_get(string_type&)): Update calls of _M_extract.
+ * src/locale-inst.cc: Add instantiations of
+ money_get::_M_extract<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
+ (__gnu_cxx::__verbose_terminate_handler): Guard against recursive
+ calls to terminate.
+ * src/demangle.cc (__cxa_demangle): Wrap in try-catch block.
+
+ * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
+ not set RLIMIT_AS on HP-UX.
+
+2004-02-21 Mark Mitchell <mark@codesourcery.com>
+
+ * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
+ not set RLIMIT_AS on HP-UX.
+
+2004-02-21 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (class money_base): Add { _S_minus,
+ _S_zero, _S_end } enum, _S_atoms.
+ (struct __moneypunct_cache<>): Parameterize on _Intl too; add
+ _M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size,
+ _M_negative_sign_size, _M_atoms; tweak constructor consistently.
+ (__moneypunct_cache<>::~__moneypunct_cache): Update.
+ (__moneypunct_cache<>::_M_cache): Fill the cache.
+ (class moneypunct): Tweak __cache_type typedef.
+ (class money_put): Inherit from money_base too; tweak declaration
+ of _M_insert, now parameterized on _Intl.
+ * include/bits/locale_facets.tcc
+ (struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New.
+ (money_put<>::_M_insert): Update definition to use the cache;
+ call reserve on __res to avoid multiple reallocations.
+ (money_put<>::do_put(long double),
+ money_put<>::do_put(const string_type&): Update calls of _M_insert.
+ * config/locale/generic/monetary_members.cc
+ (moneypunct<char, true>::_M_initialize_moneypunct,
+ moneypunct<char, false>::_M_initialize_moneypunct,
+ moneypunct<wchar_t, true>::_M_initialize_moneypunct,
+ moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update.
+ * config/locale/gnu/monetary_members.cc: Likewise.
+ * config/locale/gnu/monetary_members.cc
+ (moneypunct<wchar_t, true>::~moneypunct(),
+ moneypunct<wchar_t, false>::~moneypunct()): Likewise.
+ * src/globals_locale.cc: Tweak fake_money_cache_c.
+ * src/locale-inst.cc: Add instantiations for
+ money_put::_M_insert<false> and money_put::_M_insert<true> and
+ __moneypunct_cache<C, false>, __moneypunct_cache<C, true>.
+ * src/locale_facets.cc: Define money_base::_S_atoms.
+ * src/locale_init.cc: Update placement new of
+ __moneypunct_cache<char, false>, __moneypunct_cache<char, true>,
+ __moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>.
+
+ * config/locale/generic/numeric_members.cc: Clean up.
+ * config/locale/gnu/numeric_members.cc: Likewise.
+ * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
+ * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
+ * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
+ * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
+ * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
+ * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
+
+2004-02-20 Mark Mitchell <mark@codesourcery.com>
+
+ * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open
+ FIFO for writing with ios_base::in|ios_base::out.
+ * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
+ * testsuite/27_io/objects/char/7.cc: Likewise.
+ * testsuite/27_io/objects/char/9661-1.cc: Open FIFO for writing
+ with "r+".
+
+2004-02-19 David Edelsohn <edelsohn@gnu.org>
+
+ * 22_locale/collate/compare/wchar_t/2.cc: Change input-charset
+ from iso-8859-1 to ISO8859-1.
+ * 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
+ * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
+ * 22_locale/collate/hash/wchar_t/2.cc: Same.
+ * 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
+ * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
+ * 22_locale/collate/transform/wchar_t/2.cc: Same.
+ * 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
+ * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same.
+
+2004-02-18 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (money_get<>::_M_extract):
+ New, helper for do_get.
+ (money_put<>::_M_insert): Likewise, for do_put.
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract,
+ money_put<>::_M_insert): Define.
+ (money_get<>::do_get(long double&), money_get<>::do_get(
+ string_type&), money_put::do_put(long double),
+ money_put::do_put(const string_type&)): Use the helpers.
+
+2004-02-18 Paolo Carlini <pcarlini@suse.de>
+
+ * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
+ Rewrite, avoiding recursion.
+ (__gnu_internal::xwrite): Minor tweaks.
+
+2004-02-17 Stefan Olsson <stefan@xapa.se>
+
+ * include/ext/mt_allocator.h: Removed the last
+ pointer. Deallocated blocks are now added to the front of
+ freelists as proposed by Felix Yen. This gives roughly 10%
+ performance boost and saves some memory.
+ * docs/html/ext/mt_allocator.html: Change due to that deallocated
+ blocks now are added to the front of freelists. The reason to this
+ approach is also explained.
+
+2004-02-17 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int, money_get<>::do_get): Simplify
+ grouping fidelity conditional.
+
+2004-02-16 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/overflow/char/13858.cc:
+ Qualify exception with std::.
+ * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
+
+2004-02-16 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/ext/enc_filebuf/char/13189.cc: Don't check
+ for now that the catch block is not reached.
+ * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
+
+2004-02-16 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
+ Fix parsing of the remaining sign characters.
+ * 22_locale/money_get/get/char/2.cc: Tweak: now, correctly,
+ the input is scanned 'til eof.
+ * 22_locale/money_get/get/char/4.cc: Likewise.
+ * 22_locale/money_get/get/wchar_t/2.cc: Likewise.
+ * 22_locale/money_get/get/wchar_t/4.cc: Likewise.
+ * 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format,
+ not do_pos_format: the former is the only one that matters during
+ input.
+ * 22_locale/money_get/get/wchar_t/8.cc: Likewise.
+
+ * 22_locale/money_get/get/char/6.cc: Minor tweak.
+ * 22_locale/money_get/get/wchar_t/6.cc: Likewise.
+
+2004-02-15 David Asher <david.asher@cavium.com>
+
+ PR libstdc++/11352
+ * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't
+ access __olds beyond __oldlen.
+
+2004-02-14 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make
+ sure the exception is actually thrown.
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
+
+2004-02-14 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13858
+ * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external):
+ In case of conversion errors, throw ios_failure; simplify.
+ * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak,
+ previously we didn't throw in case of conversion errors, instead
+ just returned eof().
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
+
+ * include/bits/fstream.tcc (basic_filebuf<>::overflow):
+ Trivial simplification of a conditional.
+
+2004-02-12 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13731 (final part: writev)
+ * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
+ New, a wrapper around writev() handling partial writes.
+ (__basic_file<char>::xwrite): Move to __gnu_internal and make
+ static.
+ (__basic_file<char>::xsputn): Update call.
+ (__basic_file<char>::xsputn_2): Likewise.
+ * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
+ Don't declare, now static.
+
+2004-02-11 Stefan Olsson <stefan@xapa.se>
+
+ * docs/html/ext/mt_allocator.html: New.
+
+2004-02-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/20_util/allocator.html: New file, consolidate
+ allocator information here. Revamp.
+ * docs/html/documentation.html: Change links.
+ * docs/html/20_util/howto.html: Same.
+ * docs/html/ext/howto.html: Same.
+
+2004-02-11 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13731 (first part: write)
+ * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
+ New, declare.
+ * config/io/basic_file_stdio.cc (__basic_file<char>::xwrite):
+ Define it: a wrapper around write() handling partial write.
+ (__basic_file<char>::xsputn): Use it.
+ (__basic_file<char>::xsputn_2): Likewise.
+
+2004-02-11 Paolo Carlini <pcarlini@suse.de>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/14078
+ * include/std/std_istream.h (operator>>(__istream_type& (*)
+ (__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
+ operator>>(ios_base& (*)(ios_base&))): Declare inline.
+ * include/std/std_ostream.h (operator<<(__ostream_type& (*)
+ (__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
+ operator<<(ios_base& (*) (ios_base&))): Likewise.
+ * testsuite/performance/27_io/fmtflags_manipulators.cc: New.
+
+2004-02-10 Loren J. Rittle <ljrittle@acm.org>
+
+ PR libstdc++/14098
+ * config/linker-map.gnu: Add typeinfo and typeinfo name for
+ __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >.
+
+ PR libstdc++/14097
+ * config/linker-map.gnu: Add typeinfo and typeinfo name for
+ __gnu_cxx::stdio_filebuf<char, std::char_traits<char> >.
+
+2004-02-09 Loren J. Rittle <ljrittle@acm.org>
+
+ * include/ext/pool_allocator.h: Include c++config.h.
+
+2004-02-09 Stefan Olsson <stefan@xapa.se>
+
+ * include/ext/mt_allocator.h: thread_id is unused in non threaded
+ applications and now has a ifdef to remove it completely on
+ compilers without thread support. Include stdlib.h due to a
+ compiler warning on getenv().
+
+2004-02-09 Paul Brook <paul@codesourcery.com>
+
+ * libstdc++-v3/configure.host: Explicitly check for atomicity.h file.
+
+2004-02-09 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/14071
+ * src/locale_init.cc (locale::global(const locale&)): Use
+ locale::name() in order to decide whether calling setlocale.
+ * testsuite/22_locale/locale/global_locale_objects/14071.cc: New.
+
+ * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()):
+ Avoid computing &= unnecessarily.
+
+2004-02-09 James E Wilson <wilson@specifixinc.com>
+
+ PR libstdc++/5625
+ * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
+ __builtin_extend_pointer.
+
+2004-02-09 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/14072
+ * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale):
+ Don't leave dangling pointers.
+ * testsuite/27_io/basic_ios/imbue/14072.cc: New.
+ * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put
+ facet is needed in the final test.
+
+2004-02-09 Bernardo Innocenti <bernie@develer.com>
+
+ * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.
+ * configure: Regenerate.
+
+2004-02-08 Richard Henderson <rth@redhat.com>
+
+ PR libstdc++/14026
+ * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
+ uncaughtExceptions during nested catch rethrow.
+ * testsuite/18_support/14026.cc: New.
+
+2004-02-08 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
+ When working in place remember to set the state to sharable
+ (otherwise, _M_mutate does it).
+
+2004-02-08 Bernardo Innocenti <bernie@develer.com>
+
+ * include/bits/allocator.h, include/bits/basic_ios.h,
+ include/bits/basic_ios.tcc, include/bits/basic_string.h,
+ include/bits/basic_string.tcc, include/bits/boost_concept_check.h,
+ include/bits/char_traits.h, include/bits/codecvt.h,
+ include/bits/concurrence.h, include/bits/cpp_type_traits.h,
+ include/bits/demangle.h, include/bits/deque.tcc,
+ include/bits/fstream.tcc, include/bits/functexcept.h,
+ include/bits/gslice.h, include/bits/gslice_array.h,
+ include/bits/indirect_array.h, include/bits/ios_base.h,
+ include/bits/istream.tcc, include/bits/list.tcc,
+ include/bits/locale_classes.h, include/bits/locale_facets.h,
+ include/bits/locale_facets.tcc, include/bits/localefwd.h,
+ include/bits/mask_array.h, include/bits/ostream.tcc,
+ include/bits/postypes.h, include/bits/slice_array.h,
+ include/bits/sstream.tcc, include/bits/stl_algo.h,
+ include/bits/stl_algobase.h, include/bits/stl_bvector.h,
+ include/bits/stl_construct.h, include/bits/stl_deque.h,
+ include/bits/stl_function.h, include/bits/stl_heap.h,
+ include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
+ include/bits/stl_list.h, include/bits/stl_map.h,
+ include/bits/stl_multimap.h, include/bits/stl_multiset.h,
+ include/bits/stl_numeric.h, include/bits/stl_pair.h,
+ include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
+ include/bits/stl_relops.h, include/bits/stl_set.h,
+ include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
+ include/bits/stl_threads.h, include/bits/stl_tree.h,
+ include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
+ include/bits/stream_iterator.h, include/bits/streambuf.tcc,
+ include/bits/streambuf_iterator.h,include/bits/stringfwd.h,
+ include/bits/type_traits.h, include/bits/valarray_after.h,
+ include/bits/valarray_array.h, include/bits/valarray_array.tcc,
+ include/bits/valarray_before.h, include/bits/vector.tcc: Remove
+ trailing whitespace.
+
+2004-02-06 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h: Fix comment.
+
+2004-02-06 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_construct.h: Wrap overlong lines, reformat
+ according to the coding standards.
+ * include/bits/stl_pair.h: Likewise.
+ * include/bits/stl_raw_storage_iter.h: Likewise.
+ * include/bits/stl_stack.h: Likewise.
+ * include/bits/stl_uninitialized.h: Likewise.
+ * include/bits/stream_iterator.h: Likewise.
+ * include/bits/streambuf_iterator.h: Likewise.
+ * include/bits/type_traits.h: Likewise.
+
+2004-02-06 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/open/char/9507.cc:
+ Adjust timings.
+
+2004-02-05 Loren J. Rittle <ljrittle@acm.org>
+
+ * scripts/check_performance: Support PCH.
+
+ * scripts/check_performance (CXX): Add -DNOTHREAD.
+ * testsuite/performance/20_util/allocator/insert.cc: Integrate
+ threaded tests from insert_insert.cc. Tweak iterations,
+ remove special cases.
+ * testsuite/performance/20_util/allocator/insert_insert.cc:
+ Make all tests single-threaded. Tweak iterations.
+ * testsuite/performance/20_util/allocator/map_thread.cc:
+ Tweak iterations.
+ * testsuite/performance/20_util/allocator/producer_consumer.cc:
+ Likewise.
+
+2004-02-05 Geoffrey Keating <geoffk@apple.com>
+
+ PR 12179
+ * .cvsignore: New.
+ * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not
+ 'gcc-lib'. Add comment about poorly-named variables.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2004-02-05 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
+ Thousands-sep are always optional; thousands-sep are not allowed
+ after the decimal_point.
+ * testsuite/22_locale/money_get/get/char/12.cc: New.
+ * testsuite/22_locale/money_get/get/char/13.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/12.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/13.cc: New.
+
+ * testsuite/22_locale/money_get/get/char/1.cc: Clean-up.
+ * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
+ * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
+ * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
+
+ * testsuite/22_locale/money_get/get/char/9.cc: Fix citation from
+ the standard.
+ * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
+
+2004-02-05 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
+ Define.
+ * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
+ it to decide whether FIONREAD should take an off_t or int argument.
+
+2004-02-05 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_function.h: Minor formatting changes.
+
+2004-02-04 Zack Weinberg <zack@codesourcery.com>
+
+ Revert previous change to config/abi/*/baseline_symbols.txt.
+
+2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
+ New function.
+ (__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
+ (__basic_file<char>::_M_open_mode): Delete.
+ * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
+
+ * testsuite/27_io/basic_filebuf/close/char/9964.cc
+ * testsuite/27_io/basic_filebuf/open/char/9507.cc:
+ Correct flags to filebuf::open calls.
+
+ * config/abi/alpha-freebsd5/baseline_symbols.txt
+ * config/abi/alpha-linux-gnu/baseline_symbols.txt
+ * config/abi/hppa-linux-gnu/baseline_symbols.txt
+ * config/abi/i386-freebsd4/baseline_symbols.txt
+ * config/abi/i386-freebsd5/baseline_symbols.txt
+ * config/abi/i486-linux-gnu/baseline_symbols.txt
+ * config/abi/ia64-linux-gnu/baseline_symbols.txt
+ * config/abi/mips-linux-gnu/baseline_symbols.txt
+ * config/abi/sparc-freebsd5/baseline_symbols.txt
+ * config/abi/sparc-linux-gnu/baseline_symbols.txt
+ * config/abi/x86_64-linux-gnu/baseline_symbols.txt:
+ Remove entry for __basic_file<char>::_M_open_mode.
+
+2004-02-04 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
+
+2004-02-04 Felix Yen <fwy@alumni.brown.edu>
+
+ * testsuite/performance/20_util/producer_consumer.cc: New.
+ * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
+
+2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/performance/20_util/allocator.cc: Move to..
+ * testsuite/performance/20_util/allocator/insert.cc: ...here.
+ * testsuite/performance/20_util/allocator_thread.cc: Move to...
+ * testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
+ * testsuite/performance/20_util/allocator_map_thread.cc: Move to...
+ * testsuite/performance/20_util/allocator/map_thread.cc: ...here.
+
+2004-02-04 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
+ * docs/html/faq/index.txt: Regenerate.
+
+2004-02-04 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/ext/debug_allocator.h: _M_extra now stands for the
+ number of extra objects instead of the number of extra bytes.
+ (debug_allocator::allocate): Adjust.
+ (debug_allocator::deallocate): Adjust.
+
+ * include/ext/pool_allocator.h: Fix typo.
+
+2004-02-03 Felix Yen <fwy@alumni.brown.edu>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/performance/20_util/allocator.cc: Add map,
+ deque, set tests.
+ * testsuite/performance/20_util/allocator_thread.cc: Same.
+
+2004-02-03 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (insert(iterator)): Remove,
+ non-standard and already scheduled for removal.
+
+2004-02-03 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_iterator_base_funcs.h: Minor formatting
+ and indentation tweaks.
+ * include/bits/stl_iterator_base_types.h: Likewise.
+ * include/bits/stl_list.h: Likewise.
+ * include/bits/stl_map.h: Likewise.
+ * include/bits/stl_tempbuf.h: Likewise.
+
+2004-02-02 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/gslice.h, include/bits/gslice_array.h,
+ include/bits/indirect_array.h, include/bits/mask_array.h,
+ include/bits/slice_array.h, include/bits/stl_numeric.h,
+ include/std/std_valarray.h: Update copyright years.
+
+2004-02-02 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/gslice.h (gslice): Document.
+ * include/bits/gslice_array.h (gslice_array): Document.
+ * include/bits/indirect_array (indirect_array): Document.
+ * include/bits/mask_array (mask_array): Document.
+ * include/bits/slice_array.h (slice,slice_array): Document.
+ * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
+ adjacent_difference): Document
+ * include/std/std_valarray.h (valarray): Document.
+
+2004-02-02 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/19_diagnostics/howto.html: Move verbose terminate
+ documentation...
+ * docs/html/18_support/howto.html: Here.
+ * docs/html/documentation.html: Add reference here.
+
+2004-02-02 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/c++locale_internal.h: Remove prototypes
+ of no longer used GLIBC thread locale functions.
+
+2004-02-02 Eric Christopher <echristo@redhat.com>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
+ -finput-charset.
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
+ * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
+ * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
+ Ditto.
+
+2004-02-02 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_function.h: Additional minor tweaks.
+ * include/bits/stl_multiset.h: Likewise.
+
+ * include/bits/stl_queue.h: Minor tweaks.
+
+2004-02-02 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13976 (continued)
+ * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
+ Make the second parameter unnamed, to void unused parameter
+ warnings.
+ * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
+
+2004-02-02 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13976
+ * include/ext/malloc_allocator.h (malloc_allocator::allocate):
+ Make the second parameter unnamed, to void unused parameter
+ warnings.
+ * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
+ * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
+
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_algo.h: Additional minor tweaks.
+ * include/bits/stl_map.h: Likewise.
+ * include/bits/stl_multimap.h: Likewise.
+ * include/bits/stl_multiset.h: Likewise.
+ * include/bits/stl_set.h: Likewise.
+ * include/bits/stl_tree.h: Likewise.
+
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
+ Remove, unused.
+
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_function.h: Additional minor tweaks.
+
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/deque.tcc: Wrap overlong lines, constify
+ a few variables, reformat according to the coding standards.
+ * include/bits/list.tcc: Likewise.
+ * include/bits/stl_deque.h: Likewise.
+ * include/bits/stl_function.h: Likewise.
+ * include/bits/stl_iterator.h: Likewise.
+ * include/bits/stl_iterator_base_funcs.h: Likewise.
+ * include/bits/stl_iterator_base_types.h: Likewise.
+ * include/bits/stl_list.h: Likewise.
+ * include/bits/stl_map.h: Likewise.
+ * include/bits/stl_multimap.h: Likewise.
+ * include/bits/stl_multiset.h: Likewise.
+ * include/bits/stl_relops.h: Likewise.
+ * include/bits/stl_set.h: Likewise.
+
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_bvector.h: Wrap overlong lines, constify
+ a few variables, reformat according to the coding standards.
+ * include/bits/stl_tree.h: Likewise.
+
+2004-01-31 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_algo.h: Minor additional reformat, add
+ copyright year.
+ * include/bits/stl_algobase.h: Add copyright year.
+
+2004-01-31 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_algo.h: Wrap overlong lines, constify
+ a few variables, reformat according to the coding standards.
+ * include/bits/stl_algobase.h: Likewise.
+ * include/bits/stl_heap.h: Likewise.
+
+2004-01-31 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
+
+ * include/bits/basic_string.h: Fix two comments.
+
+2004-01-31 Per Bothner <per@bothner.com>
+
+ * include/ext/mt_allocator.h
+ (__mt_alloc::_S_thread_freelist_mutex): Guard with
+ __GTHREAD_MUTEX_INIT.
+
+2004-01-31 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
+
+2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/21_strings/basic_string/cons/char/6.cc: New.
+ * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
+ * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
+
+2004-01-30 Felix Yen <fwy@alumni.brown.edu>
+
+ * testsuite/performance/20_util/allocator_thread.cc (do_loop):
+ Don't use clear, but instead assign. Use insert.
+
+2004-01-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/demangle.cc: Add instantiations.
+ * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
+ * src/Makefile.in: Regenerate.
+
+2004-01-30 David Edelsohn <edelsohn@gnu.org>
+
+ * src/allocator.cc: Protect _S_get_thread_id() and
+ _S_thread_key_destr() with #ifdef __GTHREADS.
+
+2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+ Reshuffle performance testsuite.
+ * testsuite/performance/allocator.cc, allocator_map_thread.cc,
+ allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
+ cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
+ fstream_seek_write.cc, ifstream_extract_float.cc,
+ ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
+ list_create_fill_sort.cc, map_create_fill.cc,
+ narrow_widen_char.cc, narrow_widen_wchar_t.cc,
+ ofstream_insert_float.cc, ofstream_insert_int.cc,
+ string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
+ wchar_t_out.cc: Split into...
+ * testsuite/performance/20_util/allocator.cc: New.
+ * testsuite/performance/20_util/allocator_map_thread.cc: New.
+ * testsuite/performance/20_util/allocator_thread.cc: New.
+ * testsuite/performance/21_strings/string_append: New.
+ * testsuite/performance/22_locale/is_wchar_t.cc: New.
+ * testsuite/performance/22_locale/narrow_widen_char.cc: New.
+ * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
+ * testsuite/performance/22_locale/wchar_t_in.cc: New.
+ * testsuite/performance/22_locale/wchar_t_length.cc: New.
+ * testsuite/performance/22_locale/wchar_t_out.cc: New.
+ * testsuite/performance/23_containers/container_benchmark.cc: New.
+ * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
+ * testsuite/performance/23_containers/map_create_fill.cc: New.
+ * testsuite/performance/26_numerics/complex_norm.cc: New.
+ * testsuite/performance/27_io/cout_insert_int.cc: New.
+ * testsuite/performance/27_io/filebuf_copy.cc: New.
+ * testsuite/performance/27_io/filebuf_sputc.cc: New.
+ * testsuite/performance/27_io/fstream_seek_write.cc: New.
+ * testsuite/performance/27_io/ifstream_extract_float.cc: New.
+ * testsuite/performance/27_io/ifstream_extract_int.cc: New.
+ * testsuite/performance/27_io/ifstream_getline.cc: New.
+ * testsuite/performance/27_io/ofstream_insert_float.cc: New.
+ * testsuite/performance/27_io/ofstream_insert_int.cc: New.
+
+2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (_Rep::_S_create):
+ Never allocate a string bigger than max_size(); always keep
+ __capacity and __size in sync to avoid memory leaks at
+ deallocation time.
+
+2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (_S_construct(_InIterator,
+ _InIterator, const _Alloc&, input_iterator_tag)): Simplify
+ the double loop, streamline.
+
+ * include/bits/basic_string.tcc: Very minor tweaks.
+
+2004-01-30 Loren J. Rittle <ljrittle@acm.org>
+
+ * scripts/check_performance: Only compile with $THREAD_FLAG
+ when test is marked to require it. Allow multiple
+ compilations/executions of marked tests.
+ * testsuite/testsuite_performance.h (report_performance):
+ Report dynamic thread support status.
+ (report_header): Likewise.
+ * testsuite/performance/allocator.cc: Stabilize iteration
+ count. Support more allocators. Mark each allocator test to
+ run and report independently.
+ * testsuite/performance/allocator_map_thread.cc: Likewise.
+ * testsuite/performance/allocator_thread.cc: Likewise.
+
+2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
+
+ * config/local/generic/c_locale.h: Change ::malloc() to new char[].
+ * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
+ * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
+ std::get_temporary_buffer() instead of duplicating its code.
+ Update to C++STYLE conventions.
+ * include/std/std_memory.h (get_temporary_buffer): Use ::operator
+ new() instead of std::malloc().
+ (return_temporary_buffer): Use ::operator delete() instead of
+ std::free().
+
+2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/allocator.h: Temporary switch to new_allocator as
+ the default to unjam bootstraps.
+
+2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/Makefile.am (bits_headers): Remove allocator_traits.h.
+ * include/Makefile.in: Regenerate.
+ * include/bits/allocator_traits.h: Remove.
+ * include/bits/allocator.h: Remove allocator_traits.h include, and
+ relevant comments.
+ (allocator): Empty base class, inherit from the underlying allocator.
+ * src/allocator-inst.cc: Move __pool_alloc instantiation to...
+ * src/allocator.cc: ...here. New. For the underlying allocators.
+ Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
+ * config/linker-map.gnu: Remove __pool_alloc bits.
+ * src/Makefile.am (sources): Add allocator.cc.
+ * src/Makefile.in: Regenerate.
+ * testsuite/20_util/allocator/1.cc: Split second test into...
+ * testsuite/20_util/allocator/8230.cc: ...this.
+ * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
+ typedef to use std::allocatore. Format.
+ * include/ext/pool_allocator.h: Remove allocator_traits.h include,
+ _Alloc_traits.
+ * include/ext/mt_allocator.h (__gnu_cxx): Qualify
+ __throw_bad_alloc calls. Don't include <memory>.
+ * include/ext/malloc_allocator.h: Remove <memory> include.
+ * include/ext/new_allocator.h (new_allocator): Same.
+ * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
+ declaration. Switch __alloc to _Alloc.
+ * include/ext/hashtable.h: Remove __alloc.
+ * include/backward/alloc.h: Only inject allocator, not
+ implementation details.
+
+ * include/ext/mt_allocator.h: Replace free with delete.
+
+2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/globals_io.cc: Change to __gnu_internal namespace.
+ * src/globals_locale.cc: Same.
+ * src/locale_init.cc: Same.
+ * src/ios_init.cc: Same.
+
+2004-01-28 Stefan Olsson <stefan@snon.net>
+
+ * include/ext/mt_allocator.h: Replaced all malloc() calls with
+ operator new(). Added support for the env variable
+ GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
+ one in allocate() as well). Fix typos.
+
+2004-01-28 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (_S_create(size_t,
+ const _Alloc&): Change signature to take two size_type
+ arguments.
+ * include/bits/basic_string.tcc (_S_construct(_InIterator,
+ _InIterator, const _Alloc&, input_iterator_tag)): Update
+ call, tweak a bit.
+ (_S_construct(_InIterator, _InIterator, const _Alloc&,
+ forward_iterator_tag)): Likewise.
+ (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
+ (_M_mutate(size_type, size_type, size_type)): Don't
+ implement the exponential growth policy, demand it to
+ _S_create, update call and simplify.
+ (_M_clone(const _Alloc&, size_type)): Likewise.
+ (_S_create(size_type, size_type, const _Alloc&)): Implement
+ the growth policy, simplify otherwise.
+
+ * include/bits/basic_string.h (_Rep::operator[]): Tweak
+ signature to take a size_type, consistently with the other
+ members.
+
+2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
+ delete declarations, add include and test variable.
+
+2003-01-27 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/codecvt.h, include/bits/locale_facets.h,
+ include/bits/postypes.h, include/bits/stl_bvector.h,
+ include/bits/stl_multiset.h, include/bits/stl_set.h,
+ include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
+ include/std/std_complex.h: Document.
+
+2004-01-27 Jerry Quinn <jlquinn@optonline.net>
+
+ PR libstdc++/11584
+ * include/bits/ios_base.h (ios_base::_M_grow_words): Add
+ iword/pword selector.
+ (ios_base::iword, ios_base::pword): Use it.
+ * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
+ iword or pword member on alloc failure.
+ * testsuite/27_io/ios_base/storage/11584.cc: New test.
+
+2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
+ PJ Darcy <darcypj@us.ibm.com>
+
+ * configure.host: Add support for *-tpf.
+ * crossconfig.m4: Likewise.
+ * configure: Regenerate.
+ * config/os/tpf: New directory.
+ * config/os/tpf/os_defines.h: New file.
+ * config/os/tpf/ctype_base.h: Likewise.
+ * config/os/tpf/ctype_inline.h: Likewise.
+ * config/os/tpf/ctype_noninline.h: Likewise.
+
+2004-01-27 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13884
+ * include/bits/sstream.tcc: Guard use of extern template.
+
+2004-01-27 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc
+ (basic_string(const basic_string&, size_type, size_type),
+ basic_string(const basic_string&, size_type, size_type,
+ const _Alloc&)): Avoid unnecessarily constructing iterators.
+
+2004-01-26 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/generic/c_locale.cc: Fix throw messages
+ to use the __N marker.
+ * config/locale/gnu/c_locale.cc: Likewise.
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
+ Likewise.
+ * docs/html/17_intro/C++STYLE: Likewise.
+ * include/bits/basic_ios.tcc: Likewise.
+ * include/bits/fstream.tcc: Likewise.
+ * include/bits/vector.tcc: Likewise.
+ * include/ext/ropeimpl.h: Likewise.
+ * include/std/std_bitset.h: Likewise.
+ * src/ios.cc: Likewise.
+ * src/locale.cc: Likewise.
+ * src/localename.cc: Likewise.
+
+2004-01-26 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (_M_replace_aux): Use the
+ __N marker in throw message.
+ * include/bits/basic_string.tcc (assign(const _CharT*,
+ size_type), insert(size_type, const _CharT*, size_type),
+ replace(size_type, size_type, const _CharT*, size_type),
+ reserve, _Rep::_S_create, resize, _M_replace_dispatch):
+ Likewise.
+
+ * include/bits/basic_string.h, include/bits/basic_string.tcc:
+ Fold overlong lines, minor formatting changes.
+
+2004-01-26 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (replace(iterator, iterator,
+ const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
+ (replace(iterator, iterator, const _CharT*)): Ditto.
+ (replace(iterator, iterator, const _CharT*, size_type)):
+ Add missing _GLIBCXX_DEBUG_PEDASSERT.
+
+2004-01-26 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (replace(size_type,
+ size_type, const _CharT*, size_type)): Implement optimized
+ in-place algorithm for non-overlapping ranges.
+ * testsuite/21_strings/basic_string/replace/char/6.cc: New.
+ * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
+
+ * include/bits/basic_string.tcc (insert(size_type,
+ const _CharT*, size_type)): Tweak slightly.
+
+2004-01-26 Andreas Schwab <schwab@suse.de>
+
+ * config/locale/gnu/monetary_members.cc: Restore locale before
+ rethrowing exception.
+
+2004-01-25 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
+ Define inline here.
+ * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
+ Move inline.
+
+ * include/bits/basic_string.tcc: Very minor tweaks.
+
+2004-01-25 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/performance/string_append.cc: Increase number
+ of iterations.
+
+2004-01-25 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (erase(size_type, size_type),
+ erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
+ instead, thus avoiding redundant check for length_error.
+
+ * include/bits/basic_string.h: Tweak some comments.
+
+2004-01-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (operator+(const _CharT*,
+ const basic_string&)): No need to go through the append
+ taking two iterators.
+
+2004-01-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
+ Revert last change to use std::min: machine language is worse.
+ (find_last_of(const _CharT*, size_type, size_type)): Ditto.
+ (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
+ (find_last_not_of(_CharT, size_type)): Ditto.
+
+ * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
+ size_type)): Discard the value returned by _M_check.
+ (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
+ (append(const basic_string&, size_type, size_type)): Ditto.
+ (copy(_CharT*, size_type, size_type)): Ditto.
+ (compare(size_type, size_type, const basic_string&)): Ditto.
+ (compare(size_type, size_type, const basic_string&,
+ size_type, size_type)): Ditto.
+ (compare(size_type, size_type, const _CharT*)): Ditto.
+ (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
+
+2004-01-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (insert(size_type,
+ const basic_string&, size_type, size_type)): Define inline here.
+ * include/bits/basic_string.tcc (insert(size_type,
+ const basic_string&, size_type, size_type)): Move inline.
+
+2004-01-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (assign(const basic_string&,
+ size_type, size_type)): Define inline here.
+ (replace(size_type, size_type, const basic_string&,
+ size_type, size_type)): Ditto.
+ (_M_replace_dispatch(iterator, iterator, _InputIterator,
+ _InputIterator, __false_type)): Only declare.
+ (_M_replace(iterator, iterator, _InputIterator,
+ _InputIterator)): Remove.
+ * include/bits/basic_string.tcc (assign(const basic_string&,
+ size_type, size_type)): Move inline.
+ (replace(size_type, size_type, const basic_string&,
+ size_type, size_type)): Ditto.
+ (_M_replace_dispatch(iterator, iterator, _InputIterator,
+ _InputIterator, __false_type)): Define, now does also what
+ _M_replace did before.
+ * src/string-inst.cc (_M_replace): Don't instantiate.
+
+ * include/bits/basic_string.tcc (find(const _CharT*,
+ size_type, size_type)): Tidy.
+ (rfind(_CharT, size_type)): Ditto.
+ (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
+ (find_first_not_of(_CharT, size_type)): Ditto.
+ (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
+ (find_last_not_of(_CharT, size_type)): Ditto.
+
+2004-01-23 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13838
+ * include/debug/bitset (operator|=): Fix typo.
+ * testsuite/23_containers/bitset/operations/13838.cc: New.
+
+2004-01-23 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (insert(size_type,
+ const _CharT*, size_type __n)): Fix length_error check.
+ (replace(size_type, size_type, const _CharT*, size_type):
+ Ditto; call _M_replace_safe.
+ (_M_replace_aux(size_type, size_type, size_type, _CharT):
+ Fix length_error check.
+ (_M_replace(iterator, iterator, _InputIterator,
+ _InputIterator)): Ditto, tweak.
+ (_M_replace_safe(size_type, size_type, const _CharT*,
+ size_type)): Remove length_error check.
+
+ * include/bits/basic_string.tcc (append(const basic_string&),
+ append(const basic_string&, size_type, size_type)): Tweak
+ comment.
+
+ * include/bits/basic_string.tcc (copy(_CharT*, size_type,
+ size_type)): If __n == 0 don't call traits::copy.
+
+2004-01-23 Stefan Olsson <stefan@snon.net>
+
+ * include/ext/mt_allocator.h: Reduce lock contention.
+
+2004-01-23 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13831
+ * include/bits/fstream.tcc (underflow): Remove unused
+ variable.
+ * include/bits/streambuf_iterator.h (equal): Ditto.
+ * include/bits/locale_facets.h (_M_convert_from_char):
+ Ditto.
+
+2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ PR c/13814
+ * config/linker-map.gnu (nan): Delete.
+ * libmath/mathconf.h (NAN, nan): Delete.
+ * linkage.m4 (nan): Don't check for it.
+ * libmath/nan.c: Delete file.
+
+ * config.h.in, configure: Regenerate.
+
+2004-01-23 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (push_back(_CharT)):
+ Call _M_replace_aux.
+ (insert(size_type, const basic_string&)): Trivial tweak.
+ (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
+ (insert(iterator, _CharT)): Ditto.
+ (erase(size_type, size_type)): Ditto.
+ (erase(iterator)): Ditto.
+ (erase(iterator, iterator)): Ditto.
+ (replace(size_type, size_type, size_type, _CharT)): Ditto.
+
+2004-01-23 Loren J. Rittle <ljrittle@acm.org>
+
+ libstdc++/13823
+ * testsuite/performance/allocator_map_thread.cc: New test.
+
+2004-01-22 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc
+ (money_put::do_put(..., long double)): Use the basic_string
+ constructor for char arrays, not that for C-strings, to pass
+ __digits to do_put(..., const string_type&): __ws isn't
+ null-terminated.
+
+2004-01-22 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (_M_replace_safe): Change
+ signatures to take size_types and const _CharT*.
+ (_M_replace_aux): Likewise, takes size_types instead of
+ iterators.
+ (append(size_type, _CharT)): Update call.
+ (assign(size_type, _CharT)): Ditto.
+ (replace(iterator, iterator, size_type, _CharT)): Ditto.
+ (_M_replace_dispatch(iterator, iterator, _Integer,
+ _Integer, __true_type)): Ditto.
+ * include/bits/basic_string.tcc (assign(const _CharT*,
+ size_type)): Ditto.
+ (insert(size_type, const _CharT*, size_type)): Ditto.
+ (replace(size_type, size_type, const _CharT*,
+ size_type)): Ditto.
+ (_M_replace(iterator, iterator, _InputIterator,
+ _InputIterator)): Ditto.
+ (append(const basic_string&)): Ditto.
+ (append(const basic_string&, size_type, size_type): Ditto.
+ (append(const _CharT*, size_type): Ditto.
+ (_M_replace_safe, _M_replace_safe): Change definitions
+ accordingly, simplify.
+ * string-inst.cc (_M_replace_safe): Don't instantiate.
+
+2004-01-21 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (append(const basic_string&)):
+ Revert previous change.
+ (append(const basic_string&, size_type, size_type)): Revert
+ previous change, use _M_check and _M_limit.
+
+2004-01-21 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (_M_check): Change to return
+ a checked __pos and take an additional const char* argument.
+ (_M_fold): Rename to _M_limit, change to return a size_type,
+ corresponding to the __off limited to the actual length.
+ (insert(size_type, size_type, _CharT)): Update call, call
+ replace.
+ (insert(iterator, _CharT)): Call replace(iterator, iterator,
+ size_type, _CharT) instead.
+ (erase(size_type, size_type)): Update calls.
+ (replace(size_type, size_type, size_type, _CharT)): Ditto.
+ (substr(size_type, size_type)): Use _M_check.
+ * include/bits/basic_string.tcc (basic_string(const basic_string&,
+ size_type, size_type)): Update calls.
+ (basic_string(const basic_string&, size_type, size_type,
+ const _Alloc&)): Ditto.
+ (assign(const basic_string&, size_type, size_type)): Use the
+ new _M_check and _M_limit.
+ (insert(size_type, const basic_string&, size_type, size_type):
+ Ditto.
+ (insert(size_type, const _CharT*, size_type)): Ditto.
+ (replace(size_type, size_type, const _CharT*, size_type): Ditto.
+ (replace(size_type, size_type, const basic_string&,
+ size_type, size_type)): Ditto.
+ (append(const basic_string&)): Ditto.
+ (append(const basic_string&, size_type, size_type)): Ditto.
+ (copy(_CharT*, size_type, size_type)): Ditto.
+ (compare(size_type, size_type, const basic_string&)): Ditto.
+ (compare(size_type, size_type, const basic_string&,size_type,
+ size_type)): Ditto.
+ (compare(size_type, size_type, const _CharT*)): Ditto.
+ (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
+
+2004-01-19 Stefan Olsson <stefan@snon.net>
+
+ * include/ext/mt_allocator.h: If a thread, when it dies, still has
+ memory on it's freelist this memory is not returned to global
+ list. Simplification of deallocate so that memory is always
+ returned to the calling thread id's freelist instead of to
+ global. Fix typos. Add volatile where appropriate.
+
+2004-01-19 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
+ * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
+ use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
+
+2004-01-19 Paolo Carlini <pcarlini@suse.de>
+
+ * src/debug.cc: Make sure all the names are prefixed with
+ double (or single) underscore.
+
+2004-01-19 Paolo Carlini <pcarlini@suse.de>
+
+ * src/debug.cc: Trivial formatting change.
+
+2004-01-19 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (_S_construct(size_type,
+ _CharT, const _Alloc&)): Remove redundant try/catch.
+ (_M_mutate(size_type, size_type, size_type)): Ditto.
+ (_M_clone(const _Alloc&, size_type)): Ditto.
+
+2004-01-18 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (c_str()): Simplify, due to
+ 21.3.4 the internal representation is always kept null-terminated.
+ * include/bits/basic_string.tcc (_M_clone): Null-terminate.
+ * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
+ * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
+ Ditto.
+
+2004-01-18 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (append(size_type, _CharT)):
+ Moved inline, just call _M_replace_aux, no source iterators at
+ risk of being clobbered.
+ (assign(size_type, _CharT)): Call directly _M_replace_aux.
+ (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
+ input_iterator_tag)): Remove fifth unused argument.
+ (_M_replace_dispatch(iterator, iterator, _InputIterator,
+ _InputIterator, __false_type)): Update call.
+ * include/bits/basic_string.tcc (replace(size_type, size_type,
+ const _CharT*, size_type)): Update call.
+ (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
+ throw string literal.
+ (_M_replace_safe(iterator, iterator, _ForwardIterator,
+ _ForwardIterator)): Likewise.
+ (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
+ input_iterator_tag)): Remove fifth unused argument.
+ (append(size_type __n, _CharT __c)): Move inline.
+ * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
+ const C*, const C*, input_iterator_tag)): Remove fifth unused
+ argument.
+
+2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
+ * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
+
+2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
+ mkfifo for mingw32.
+
+2004-01-15 Stefan Olsson <stefan@snon.net>
+
+ * include/ext/mt_allocator.h: Reuse thread id's as soon as
+ possible by changing the behaviour of thread_freelist to do
+ push_front when threads die instead of push_back.
+
+2004-01-14 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (struct __numpunct_cache):
+ Add member _M_grouping_size, caching the length of _M_grouping.
+ (__numpunct_cache<>::_M_cache): Assign the latter.
+ (__verify_grouping): Move declaration...
+ * include/bits/locale_facets.tcc (__verify_grouping):
+ ... here, change signature to take a const char* and a size_t
+ for the grouping; not a template anymore.
+ (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
+ Likewise change signature and tweak consistently.
+ (num_get::_M_extract_float, num_get::_M_extract_int,
+ num_put::_M_insert_int, num_put::_M_insert_float,
+ money_get::do_get(string_type&), money_get::do_put(string_type)):
+ Update callers.
+ * config/locale/generic/numeric_members.cc
+ (numpunct<>::_M_initialize_numpunct): Assign the new member.
+ * config/locale/gnu/numeric_members.cc
+ (numpunct<>::_M_initialize_numpunct): Likewise.
+ * src/locale-inst.cc (__add_grouping): Tweak signature.
+ (__verify_grouping): Don't instantiate, not a template anymore.
+
+ * include/bits/locale_facets.h: Rename _M_truename_len ->
+ _M_truename_size, _M_falsename_len -> _M_falsename_size.
+ * include/bits/locale_facets.tcc: Likewise.
+ * config/locale/generic/numeric_members.cc: Likewise.
+ * config/locale/gnu/numeric_members.cc: Likewise.
+
+2004-01-14 Stefan Olsson <stefan@snon.net>
+
+ * include/ext/mt_allocator.h: Fixups.
+ * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
+ * testsuite/performance/allocator_thread.cc: Same.
+
+2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/performance/ifstream_extract_float.cc: Add higher
+ precision tests.
+ * testsuite/performance/ofstream_insert_float.cc: Same.
+
+2004-01-13 Paolo Carlini <pcarlini@suse.de>
+
+ * src/locale-misc-inst.cc (__convert_from_v(long),
+ __convert_from_v(unsigned long), __convert_from_v(long long),
+ __convert_from_v(unsigned long long)): Remove, unused.
+
+2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/performance/ifstream_extract_float.cc: New.
+ * testsuite/performance/ofstream_insert_float.cc: Float generation
+ matches above.
+
+ * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
+ * 20_util/auto_ptr/1.cc: ...this.
+ * 20_util/auto_ptr/2.cc: Same.
+ * 20_util/auto_ptr/3.cc: Same.
+ * 20_util/auto_ptr/3946.cc: Same.
+ * 20_util/auto_ptr/4.cc: Same.
+ * 20_util/auto_ptr/5.cc: Same.
+ * 20_util/auto_ptr/6.cc: Same.
+ * 20_util/auto_ptr/7.cc: Same.
+ * 20_util/auto_ptr/assign_neg.cc
+ * 20_util/pairs.cc: Break into...
+ * 20_util/pair/1.cc: ...this.
+ * 20_util/pair/2.cc: Same.
+ * 20_util/pair/3.cc: Same.
+ * 20_util/pair/4.cc: Same.
+
+2004-01-13 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
+ Set correctly just basefield, the only group that matters.
+
+2004-01-13 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
+ (_Rope_rep_base): Inherit directly from the rope allocator;
+ use rebinding instead of _Alloc_traits; pick up data member
+ from _Rope_rep_alloc_base.
+ (_Rope_alloc_base): Eliminate.
+ (_Rope_base): Inherit directly from the rope allocator; use
+ rebinding instead of _Alloc_traits; pick up data member from
+ _Rope_alloc_base.
+ (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
+ rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
+
+2004-01-13 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13650
+ * include/bits/basic_string.tcc (compare(size_type, size_type,
+ const _CharT*, size_type)): Implement correctly the resolution
+ of DR 5: basically, s is a char array, -not- a C string.
+ * include/bits/basic_string.h: Tweak some comments.
+ * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
+ * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
+
+2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
+ Solaris.
+
+2004-01-12 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
+ Use try_mkfifo.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
+ Likewise.
+
+2004-01-12 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (struct __numpunct_cache):
+ Add members _M_truename_len and _M_falsename_len, caching
+ the lengths of _M_truename and _M_falsename.
+ (__numpunct_cache<>::_M_cache): Assign the latter.
+ * include/bits/locale_facets.tcc (num_get::do_get(bool&),
+ num_put::do_put(bool)): Use the new members, thus avoiding
+ computing string lengths again and again.
+ * config/locale/generic/numeric_members.cc
+ (numpunct<>::_M_initialize_numpunct): Assign the new members.
+ * config/locale/gnu/numeric_members.cc
+ (numpunct<>::_M_initialize_numpunct): Likewise.
+
+2004-01-12 Mark Mitchell <mark@codesourcery.com>
+
+ * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
+ * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
+ it.
+ * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
+ and remove Cygwin XFAIL.
+ * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
+ Likewise.
+ * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
+ * testsuite/27_io/objects/char/7.cc: Likewise.
+ * testsuite/27_io/objects/char/9661-1.cc: Likewise.
+ * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
+ * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
+
+2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * include/std/std_complex.h (std::complex<>::real): Return a
+ reference. Add non-const overload.
+ (std::complex<>::real): Likewise.
+ (std::real): Likewise.
+ (std::imag): Likewise.
+ (std::operator+): Tidy.
+ (std::operator-): Likewise.
+ (std::operator*): Likewise.
+ (std::operator/): Likewise.
+ (std::operator>>): Likewise.
+
+2004-01-11 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13582
+ * include/bits/fstream.tcc (imbue): Exploit the external
+ buffer to imbue 'on the fly' a new locale and convert its
+ remainder with the new codecvt facet.
+ (underflow): Tweak slightly to deal with this special case.
+ * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
+ * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
+ * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
+
+2004-01-10 Paolo Carlini <pcarlini@suse.de>
+
+ * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
+ Import Revision 28.
+
+2004-01-10 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13630
+ * include/bits/locale_classes.h (class locale): Fix category
+ typedef.
+ * testsuite/22_locale/locale/13630.cc: Add.
+
+2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ * include/bits/locale_facets.h: Make a name really dependent. This
+ will be needed when Core Issue 224 is implemented.
+
+2004-01-09 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
+ * testsuite/performance/allocator_thread.cc: Likewise.
+
+2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
+
+ * crossconfig.m4: Add LFS, io bits to linux cross config.
+ * acconfig.h: Remove obsolete bits, reorder.
+ * config.h.in: Regenerate.
+ * aclocal.m4: Same.
+ * configure: Same.
+
+2004-01-07 Gawain Bolton <gp.bolton@computer.org>
+
+ * include/bits/stl_list.h:
+ * include/bits/list.tc:
+ * src/list.cc:
+ Performance enhancements for destructor, push_front(),
+ push_back(), pop_front(), pop_back(), sort()
+ Eliminated static_casts where possible.
+ Moved code out of header files into new src/list.cc
+ implementation file for library where possible.
+ Remove inheritance from iterator class and create separate
+ classes for non-constant and constant iterators.
+ * include/bits/stl_tree.h (_Rb_tree class):
+ * src/tree.cc:
+ Only erase contents in destructor.
+ Eliminate unnecessary initialization in assignment operator.
+ Optimize for the nominal case by not checking whether
+ container is empty in clear().
+ Re-order test in _M_insert() to improve performance.
+ Move initialization of new node's left & right pointers to
+ src/tree.cc to where new node's colour is initialized
+ and to reduce the amount of inline code.
+ Use _M_leftmost() and _M_end() to improve readability where
+ appropriate.
+ Create separate classes for non-constant and constant
+ iterators to clarify code, avoid extra template parameters and
+ casting away constness.
+
+2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/Makefile.am (sources): Add list.cc, tree.cc.
+ * src/stl_tree.cc: Move to...
+ * src/tree.cc: ...here.
+ * src/list.cc: Add.
+ * config/linker-map.gnu: Tweaks.
+ * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
+ * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
+
+ * bits/stl_vector.h: Column wrap comments.
+
+2004-01-07 Loren J. Rittle <ljrittle@acm.org>
+
+ (re-open) PR libstdc++/12658
+ * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
+ (locale::global): Likewise.
+
+2004-01-07 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
+ Remove redundant #include.
+ * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
+ * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
+ re-enable normal testing.
+ * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
+ #include.
+ * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
+ More properly, #include <locale>.
+ * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
+ Remove redundant #include.
+ * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
+ * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
+ redundant DejaGnu directive.
+ * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
+ redundant #include.
+
+2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
+ Stefan Olsson <stefan@snon.net>
+
+ * scripts/check_performance: Use -pthread.
+ * testsuite/performance/allocator.cc: Tweaks, add list.
+ * testsuite/performance/allocator_thread.cc: New.
+
+2004-01-06 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/locale_facets.h: Document public classes and
+ functions.
+ * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
+ Add comment.
+
+2004-01-06 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
+ Remove redundant #includes.
+ * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
+ * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
+ * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
+ * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
+ * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
+ * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
+ * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
+ * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
+ * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/readsome/char/8258.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
+
+2004-01-04 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
+ Remove redundant #includes.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
+ Likewise.
+
+2004-01-04 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/12226
+ * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
+ constructor.
+ * testsuite/27_io/basic_fstream/4.cc: Likewise.
+ * testsuite/27_io/basic_ifstream/4.cc: Likewise.
+ * testsuite/27_io/basic_ios/4.cc: Likewise.
+ * testsuite/27_io/basic_iostream/4.cc: Likewise.
+ * testsuite/27_io/basic_istream/4.cc: Likewise.
+ * testsuite/27_io/basic_istingstream/4.cc: Likewise.
+ * testsuite/27_io/basic_ofstream/4.cc: Likewise.
+ * testsuite/27_io/basic_ostream/4.cc: Likewise.
+ * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
+ * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
+ * testsuite/27_io/basic_stringstream/4.cc: Likewise.
+
+2004-01-04 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
+ Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
+ always use double underscored names.
+ * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
+ Likewise.
+ * include/bits/locale_facets.h (struct __numpunct_cache):
+ Dimension _M_atoms_out and _M_atoms_in one position smaller.
+ (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
+ and _M_atoms_in.
OpenPOWER on IntegriCloud