OSDN Git Service

2004-11-18 Paolo Carlini <pcarlini@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index 6404896..09e20fc 100644 (file)
@@ -1,3 +1,373 @@
+2004-11-18  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (num_get<>::do_get(void*&)):
+       If the failbit is set, don't set it again.
+       (money_get<>::_M_extract): Minor stylistic tweak: consistently
+       with the other functions, take care of eofbit at the end.
+
+2004-11-18  Paolo Carlini  <pcarlini@suse.de>
+
+       DR 434. bitset::to_string() hard to use [Ready]
+       * include/std/std_bitset.h (to_string): Add three overloads, taking
+       fewer template arguments.
+       * docs/html/ext/howto.html: Add an entry for DR 434.
+       * testsuite/23_containers/bitset/to_string/1.cc: New.
+
+2004-11-17  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/istream.tcc (getline(basic_istream<>&, basic_string<>&,
+       _CharT)): Remove temporary kludge for libstdc++/15002.
+       * include/std/std_streambuf.h (class basic_streambuf): Declare
+       getline(basic_istream<>&, basic_string<>&, _CharT) as friend.
+       * include/bits/basic_string.h (getline(basic_istream<>&,
+       basic_string<>&, _CharT)): Declare optimized specializations for
+       char and wchar_t, using protected members of basic_streambuf.
+       * src/istream.cc: Define the latter.
+
+2004-11-16  Jonathan Wakely  <redi@gcc.gnu.org>
+
+       * docs/html/19_diagnostics/howto.html: Document change from
+       _GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4.
+
+2004-11-16  Matthias Klose  <doko@debian.org>
+
+       * docs/doxygen/user.cfg.in: Set HAVE_DOT to NO.
+
+2004-11-16  Matthias Klose  <doko@debian.org>
+
+       * Makefile.am (doxygen, doxygen-maint, doxygen-man): Use host_alias
+       instead of build_alias.
+       * docs/doxygen/run_doxygen: Likewise.
+       * docs/doxygen/user.cfg.in: Likewise.
+       * Makefile.in: Regenerate.
+
+2004-11-15  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/streambuf.tcc (__copy_streambufs): Provide
+       a generic version of the function, not using the protected
+       members of basic_streambuf.
+       * include/std/std_streambuf.h (__copy_streambufs): Declare
+       optimized specializations for char and wchar_t.
+       * src/streambuf.cc: New file, define the latter.
+       * src/Makefile.am: Add.
+       * src/Makefile.in: Regenerate.
+
+2004-11-15  Matthias Klose  <doko@debian.org>
+
+       * docs/doxygen/run_doxygen: Add --build_alias option,
+       substitute it in docs/doxygen/user.cfg.in.
+       * docs/doxygen/user.cfg.in: Use build_alias.
+       * Makefile.am: Pass --build_alias to run_doxygen
+       * Makefile.in: Regenerate.
+
+2004-11-15  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.4.
+
+2004-11-15  Paolo Carlini  <pcarlini@suse.de>
+
+       * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 33.
+
+2004-11-14  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get):
+       Slightly tweak for clarity (also leads to measurably better code).
+
+2004-11-12  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR other/14264
+       * testsuite/lib/libstdc++.exp: Set LC_ALL and LANG to C.
+
+2004-11-09  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (time_get<>::do_get_weekday,
+       time_get<>::do_get_monthname): Absolutely avoid dereferencing
+       end iterators.
+
+       * include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
+       Minor tweak.    
+
+2004-11-08  Benjamin Kosnik  <bkoz@redhat.com>
+           Doug Gregor  <dgregor@cs.indiana.edu>
+
+       PR libstdc++/17664
+       * src/debug.cc : Just use one mutex.
+
+2004-11-08  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * configure.ac (libtool_VERSION): To 6:4:0.
+       * configure: Regenerate.
+
+       * config/linker-map.gnu: Slide new symbols into GLIBCXX_3.4.4.
+
+       * docs/doxygen/user.cfg.in: Add more extension files.
+
+2004-11-08  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/streambuf_iterator.h (class istreambuf_iterator):
+       Consistently use _M_c to cache the current char, i.e., not only
+       when operator++(int) is involved; change _M_c to mutable.
+       (_M_get()): Always save the return value of _M_sbuf->sgetc() into
+       _M_c.
+       * testsuite/22_locale/time_get/get_monthname/char/1.cc: Fix
+       (long standing) typo.
+       * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
+       * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
+       * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
+
+2004-11-08  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/istream.tcc (getline(char_type*, streamsize,
+       char_type), ignore(streamsize), ignore(streamsize, int_type)):
+       Restore a generic version of the functions, not using the
+       protected members of basic_streambuf.
+       * include/std/std_istream.h (getline(char_type*, streamsize,
+       char_type), ignore(streamsize), ignore(streamsize, int_type)):
+       Declare optimized specializations for char and wchar_t.
+       * src/istream.cc: New file, define the latter.
+       * src/Makefile.am: Add.
+       * src/Makefile.in: Regenerate.
+
+2004-11-07  Paolo Carlini  <pcarlini@suse.de>
+
+       * testsuite/performance/27_io/ifstream_getline-2.cc: New.
+
+2004-11-05  Benjamin Kosnik  <bkoz@redhat.com>
+
+       PR libstdc++/17218
+       PR libstdc++/17223
+       * docs/doxygen/filter: Remove.
+       * docs/doxygen/filter.sed: Remove.
+       * docs/doxygen/mainpage.html: Add link to functions.
+       * docs/doxygen/run_doxygen: Changes due to new source filtering.
+       * docs/doxygen/user.cfg.in: Update to doxygen 1.3.9.1, tweak.
+       * include/bits/allocator.h: Tweaks for doxygen.
+       * include/bits/char_traits.h: Same.
+       * include/bits/codecvt.h: Same.
+       * include/bits/concurrence.h: Same.
+       * include/bits/locale_facets.h: Same.
+       * include/ext/array_allocator.h: Same.
+       * include/ext/debug_allocator.h: Same.
+       * include/ext/malloc_allocator.h: Same.
+       * include/ext/mt_allocator.h: Same.
+       * include/ext/new_allocator.h: Same.
+       * include/ext/pool_allocator.h: Same.
+       * include/ext/stdio_sync_filebuf.h: Same.
+       * include/std/std_memory.h: Same.
+       * include/tr1/array: Same.
+       * include/tr1/tuple: Same.
+       * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
+       * config/os/gnu-linux/ctype_base.h: Same.
+
+2004-11-04  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (num_get<>::do_get(bool&)):
+       Evaluate __beg == __end the exact strict minimum number of times.
+
+2004-11-03  Jonathan Wakely  <redi@gcc.gnu.org>
+
+       * include/bits/stl_numeric.h (partial_sum, adjacent_difference):
+       Avoid dereferencing two times __first in the prologue.
+2004-11-03  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_numeric.h: Trivial formatting fixes.
+
+2004-11-03  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/bits/c++config: Spacing.
+       * libsupc++/del_op.cc: Include c++config.h.
+       * libsupc++/del_opnt.cc: Same.
+       * libsupc++/del_opv.cc: Same.
+       * libsupc++/del_opvnt.cc: Same.
+       * libsupc++/new_op.cc: Same.
+       * libsupc++/new_opnt.cc: Same.
+       * libsupc++/new_opv.cc: Same.
+       * libsupc++/new_opvnt.cc: Same.
+
+2004-11-03  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
+
+       * config/os/bsd/darwin/os_defines.h
+       (_GLIBCXX_WEAK_DEFINITION): Define.
+       * include/bits/c++config (_GLIBCXX_WEAK_DEFINITION): Define.
+       * libsupc++/del_op.cc (operator delete(void *)): Use
+       _GLIBCXX_WEAK_DEFINITION.
+       * libsupc++/del_opnt.cc
+       (operator delete(void *, const std::nothrow_t&)): Same.
+       * libsupc++/del_opv.cc (operator delete[](void *)): Same.
+       * libsupc++/del_opvnt.cc
+       (operator delete[](void *, const std::nothrow_t&)): Same.
+       * libsupc++/new_op.cc (operator new(std::size_t)): Same.
+       * libsupc++/new_opnt.cc
+       (operator new(std::size_t, const std::nothrow_t&)): Same
+       * libsupc++/new_opv.cc (operator new[](std::size_t)): Same.
+       * libsupc++/new_opvnt.cc
+       (operator new[](std::size_t, const std::nothrow_t&)): Same.
+
+2004-11-02  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (num_get<>::_M_extract_int):
+       Evaluate *__beg the exact strict minimum number of times; likewise
+       for __beg != __end; slightly simplify main parsing loop.
+
+2004-11-02  Benjamin Kosnik  <bkoz@redhat.com>
+           Lothar Werzinger  <lothar@xcerla.com>
+       
+       PR libstdc++/17664
+       * src/debug.cc: Include concurrence, use mutexes.
+       (_Safe_iterator_base::_M_attach): Here. 
+       (_Safe_iterator_base::_M_detach): Here. 
+       
+2004-11-02  Benjamin Kosnik  <bkoz@redhat.com>
+
+       PR libstdc++/17922
+       * include/bits/ios_base.h : Add enum values.
+       * testsuite/testsuite_hooks.h (bitmask_operators): Add function.
+       * testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New.
+       * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New.
+       * testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New.
+       * testsuite/27_io/ios_base/types/iostate/case_label.cc: New.
+       * testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New.
+       * testsuite/27_io/ios_base/types/openmode/case_label.cc: New.
+       * testsuite/27_io/ios_base/types/seekdir/case_label.cc: New.
+
+       * config/io/c_io_stdio.h (__ios_flags): Mark deprecated.
+       * src/ios.cc: Same.
+
+       * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
+       * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+
+2004-11-01  Momchil Velikov  <velco@fadata.bg>
+
+       PR libstdc++/18185
+       * libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled
+       exceptions.
+       * testsuite/thread/18185.cc: New.
+       
+2004-11-01  Chris Jefferson  <chris@bubblescope.net>
+
+       PR libstdc++/18159
+       * include/tr1/tuple (get(pair)): Change occurrences of _I to _Int.
+       (get(const pair)): Likewise.
+
+2004-11-01  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
+       Evaluate *__beg the exact strict minimum number of times; likewise
+       for __beg != __end; in the main parsing loop, call ++__beg in two
+       places only. The former is also a correctness issue, because,
+       according to the standard (22.2.2.1.2, Stage 2), 'in' shall be
+       dereferenced only one time for each increment.
+
+2004-10-31  Benjamin Kosnik  <bkoz@redhat.com>
+
+       PR c++/16728
+       * testsuite/23_containers/set/modifiers/16728.cc: New.
+
+2004-10-30  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/ext/bitmap_allocator.h (allocate(size_type)): Minor tweak.
+
+       * testsuite/ext/bitmap_allocator/check_delete.cc: New.
+       * testsuite/ext/bitmap_allocator/check_new.cc: Likewise.
+
+2004-10-29  Geoffrey Keating  <geoffk@apple.com>
+
+       * configure.host (darwin*): Set os_include_dir to a separate directory
+       for Darwin.
+       * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind,
+       'darwin'.
+       * config/locale/darwin/ctype_members.cc: New.
+       * config/os/bsd/darwin/ctype_base.h: New.
+       * config/os/bsd/darwin/ctype_inline.h: New.
+       * config/os/bsd/darwin/ctype_noninline.h: New.
+       * config/os/bsd/darwin/os_defines.h: New.
+
+       * testsuite/22_locale/locale/cons/12658_thread-1.cc: Only xfail
+       on Linux.
+
+2004-10-29  Chris Jefferson  <chris@bubblescope.net>
+
+       * include/bit/stl_algo.h (find_first_of(,,,,pred)):
+       Remove invalid EqualOpConcept.
+       * testsuite/25_algorithms/find_first_of/concept_check_1.cc: New.
+
+2004-10-29  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * testsuite/testsuite_allocator.h (check_delete): New.
+       (check_new): Simplify.
+       * testsuite/ext/array_allocator/check_delete.cc: New.
+       * testsuite/ext/array_allocator/check_new.cc: Simplify.
+       * testsuite/ext/debug_allocator/check_delete.cc: New.
+       * testsuite/ext/debug_allocator/check_new.cc: Simplify.
+       * testsuite/ext/malloc_allocator/check_delete.cc: New.
+       * testsuite/ext/malloc_allocator/check_new.cc: Simplify.
+       * testsuite/ext/mt_allocator/check_delete.cc: New.
+       * testsuite/ext/mt_allocator/check_new.cc: Simplify.
+       * testsuite/ext/new_allocator/check_delete.cc: New.
+       * testsuite/ext/new_allocator/check_new.cc: Simplify.
+       * testsuite/ext/pool_allocator/check_delete.cc: New.
+       * testsuite/ext/pool_allocator/check_new.cc: Simplify.
+
+2004-10-28  Chris Jefferson  <chris@bubblescope.net>
+
+       PR libstdc++/18159
+       * include/tr1/tuple: Fix, change formatting.
+
+2004-10-28  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/ext/mt_allocator.h (__common_pool_policy): Add template
+       template parameter for pool class type.
+       (__per_type_pool_policy): Same.
+       (__mt_allocator): Don't inherit policy. Qualify policy_type calls.
+       * testsuite/ext/mt_allocator/check_deallocate_null.cc: Fix.
+       * testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: Same.
+       * testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
+       * testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
+       * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
+       * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
+       * testsuite/ext/mt_allocator/deallocate_local-2.cc: Same.
+       * testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
+       * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
+       * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
+       * testsuite/ext/mt_allocator/instantiate.cc: Same.
+       * testsuite/ext/mt_allocator/tune-1.cc: Same.
+       * testsuite/ext/mt_allocator/tune-2.cc: Same.
+       * testsuite/ext/mt_allocator/tune-3.cc: Same.
+       * testsuite/ext/mt_allocator/tune-4.cc: Same.
+
+2004-10-28  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
+       Cache *__beg in __c when parsing exponent sign too.
+       (num_get<>::do_get(..., bool&)): Cache *__beg.
+       (money_get<>::_M_extract)): Likewise, in money_base::value.
+
+2004-10-27  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/basic_string.h (assign(const basic_string&)):
+       Move out of line...
+       * include/bits/basic_string.tcc: ... here.
+
+2004-10-27  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
+       Move out of line...
+       * include/bits/basic_string.tcc: ... here.
+
+2004-10-26  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/basic_string.h (append(const basic_string&),
+       append(size_type, _CharT)): Move out of line...
+       * include/bits/basic_string.tcc: ... here.
+
+2004-10-26  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/basic_string.h (erase(size_type, size_type),
+       erase(iterator), erase(iterator, iterator)): Call _M_mutate
+       instead of _M_replace_safe, equivalent when the fourth argument
+       is zero and simpler.
+
 2004-10-26  Benjamin Kosnik  <bkoz@redhat.com>
 
        * include/ext/array_allocator.h (array::allocate): Check for valid
@@ -7,6 +377,8 @@
        
 2004-10-25  Geoffrey Keating  <geoffk@apple.com>
 
+       * configure.host (darwin*): Build libstdc++ single module
+       and flat namespace.
        * libsupc++/new_op.cc (new): Make weak.
        * libsupc++/new_opnt.cc (new): Make weak.
        * libsupc++/new_opv.cc (new): Make weak.