OSDN Git Service

2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index 822c781..a043fd5 100644 (file)
@@ -1,3 +1,390 @@
+2004-03-01  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * 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):
        * 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,
 2004-02-12  Paolo Carlini  <pcarlini@suse.de>
 
        PR libstdc++/13731 (final part: writev)
-       * config/io/basic_file_stdio.cc (__gnu_internal::xwrite):
+       * 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>::write):
+       * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
        Don't declare, now static.
 
 2004-02-11  Stefan Olsson  <stefan@xapa.se>
 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
+       * 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
+       * 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().