OSDN Git Service

2005-03-23 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index 8acc327..8127d70 100644 (file)
@@ -1,3 +1,245 @@
+2005-03-23  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies
+       using _GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_USE_C99_MATH, and
+       _GLIBCXX_USE_C99_WCHAR.
+       Remove GLIBCXX_ENABLE_C_MBCHAR, consolidate in GLIBCXX_ENABLE_C99
+       and GLIBCXX_ENABLE_WCHAR_T.
+       Take C99 bits from GLIBCXX_CHECK_WCHAR_T_SUPPORT and put in 
+       GLIBCXX_ENABLE_C99.
+       Change remaining parts of GLIBCXX_CHECK_WCHAR_T_SUPPORT to
+       GLIBCXX_CHECK_ICONV_SUPPORT.
+       * configure.ac: Remove GLIBCXX_ENABLE_C_MBCHAR, use
+       GLIBCXX_CHECK_ICONV_SUPPORT and GLIBCXX_ENABLE_WCHAR_T.
+       * crossconfig.m4: Same.
+       * acconfig.h: Same, adjust comments.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * docs/html/configopts.html: Change --enable-c-mbchar to
+       --enable-wchar_t.
+
+       * config/locale/gnu/c++locale_internal.h: Guard wide functions
+       with _GLIBCXX_USE_WCHAR_T.
+       * include/c_std/std_cwctype.h: Alphabetize, remove duplicates.
+       * include/c_std/std_cstdio.h: Spacing.
+
+       * config/locale/gnu/c_locale.h: Tweaks for unused warnings.
+       * src/debug.cc: Same.
+
+2005-03-23  Mark Mitchell  <mark@codesourcery.com>
+
+       * testsuite/libstdc++-dg/normal.exp: Read testsuite_files, if it
+       exists.
+
+       * testsuite/lib/libstdc++.exp (libstdc++_wchar_t): Rename to ...
+       (v3-wchar_t): ... this.
+       (libstdc++_threads): Rename to ...
+       (v3-threads): ... this.
+       (libstdc++_test_objs): Rename to ...
+       (v3-test_objs): ... this.
+       (libstdc++_build_support): Rename to ...
+       (v3-build_support): ... this.
+       * testsuite/libstdc++-dg/normal.exp: Adjust to use new names.
+
+       * testsuite/lib/libstdc++.exp (libstdc++_init): Improve handling
+       of compilers not in the build directory.
+       (libstdc++_wchar_t): New variable.
+       (libstdc++_threads): Likewise.
+       (libstdc++_test_objs): Likewise.
+       (v3_target_compile): Use libstdc++_test_objs.
+       (v3-list-tests): Remove.
+       (listdc++_build_support): New function.
+       * testsuite/libstdc++-dg/normal.exp: Rework to dynamically
+       generate list of tests.
+       
+2005-03-21  Chris Jefferson  <chris@bubblescope.net>
+
+       PR libstdc++/20577
+       * include/bits/stl_algobase.h (iter_swap): Only delegate iter_swap
+       to swap when the iterator's reference_type is a reference to its
+       value_type.
+       * testsuite/25_algorithms/iter_swap/20577.cc: New.
+
+2005-03-21  Zack Weinberg  <zack@codesourcery.com>
+
+       * acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
+       (GLIBCXX_EXPORT_INSTALL_INFO): Adjust quotation so ${gcc_version}
+       is expanded by the Makefiles, not by configure.
+       * fragment.am: Set gcc_version.
+       * libmath/Makefile.am: Likewise.
+       * configure, Makefile.in, include/Makefile.in, libmath/Makefile.in
+       * libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in
+       * testsuite/Makefile.in: Regenerate.
+
+2005-03-16  Paolo Carlini  <pcarlini@suse.de>
+
+       * testsuite/20_util/functional/binders.cc: Remove explicit
+       instantiations for non-weak systems.
+       * testsuite/20_util/memory/allocator/1.cc: Likewise.
+       * testsuite/20_util/memory/allocator/10378.cc: Likewise.
+       * testsuite/20_util/memory/allocator/10416.cc: Likewise.
+       * testsuite/20_util/memory/allocator/8230.cc: Likewise.
+       * testsuite/20_util/utility/rel_ops.cc: Likewise.
+       * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
+       * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
+       * testsuite/23_containers/deque/cons/1.cc: Likewise.
+       * testsuite/23_containers/deque/cons/2.cc: Likewise.
+       * testsuite/23_containers/deque/invalidation/1.cc: Likewise.
+       * testsuite/23_containers/deque/invalidation/2.cc: Likewise.
+       * testsuite/23_containers/deque/invalidation/3.cc: Likewise.
+       * testsuite/23_containers/deque/invalidation/4.cc: Likewise.
+       * testsuite/23_containers/deque/modifiers/swap.cc: Likewise.
+       * testsuite/23_containers/deque/operators/1.cc: Likewise.
+       * testsuite/23_containers/list/capacity/1.cc: Likewise.
+       * testsuite/23_containers/list/cons/1.cc: Likewise.
+       * testsuite/23_containers/list/cons/2.cc: Likewise.
+       * testsuite/23_containers/list/cons/3.cc: Likewise.
+       * testsuite/23_containers/list/cons/4.cc: Likewise.
+       * testsuite/23_containers/list/cons/5.cc: Likewise.
+       * testsuite/23_containers/list/cons/6.cc: Likewise.
+       * testsuite/23_containers/list/cons/7.cc: Likewise.
+       * testsuite/23_containers/list/cons/8.cc: Likewise.
+       * testsuite/23_containers/list/cons/9.cc: Likewise.
+       * testsuite/23_containers/list/invalidation/1.cc: Likewise.
+       * testsuite/23_containers/list/invalidation/2.cc: Likewise.
+       * testsuite/23_containers/list/invalidation/3.cc: Likewise.
+       * testsuite/23_containers/list/invalidation/4.cc: Likewise.
+       * testsuite/23_containers/list/modifiers/1.cc: Likewise.
+       * testsuite/23_containers/list/modifiers/2.cc: Likewise.
+       * testsuite/23_containers/list/modifiers/3.cc: Likewise.
+       * testsuite/23_containers/list/operators/1.cc: Likewise.
+       * testsuite/23_containers/list/operators/2.cc: Likewise.
+       * testsuite/23_containers/list/operators/3.cc: Likewise.
+       * testsuite/23_containers/list/operators/4.cc: Likewise.
+       * testsuite/23_containers/map/insert/1.cc: Likewise.
+       * testsuite/23_containers/map/invalidation/1.cc: Likewise.
+       * testsuite/23_containers/map/invalidation/2.cc: Likewise.
+       * testsuite/23_containers/map/modifiers/swap.cc: Likewise.
+       * testsuite/23_containers/map/operators/1.cc: Likewise.
+       * testsuite/23_containers/multimap/invalidation/1.cc: Likewise.
+       * testsuite/23_containers/multimap/invalidation/2.cc: Likewise.
+       * testsuite/23_containers/multimap/modifiers/swap.cc: Likewise.
+       * testsuite/23_containers/multiset/insert/1.cc: Likewise.
+       * testsuite/23_containers/multiset/insert/2.cc: Likewise.
+       * testsuite/23_containers/multiset/invalidation/1.cc: Likewise.
+       * testsuite/23_containers/multiset/invalidation/2.cc: Likewise.
+       * testsuite/23_containers/multiset/modifiers/swap.cc: Likewise.
+       * testsuite/23_containers/priority_queue/members/7161.cc: Likewise.
+       * testsuite/23_containers/queue/members/7157.cc: Likewise.
+       * testsuite/23_containers/set/insert/1.cc: Likewise.
+       * testsuite/23_containers/set/invalidation/1.cc: Likewise.
+       * testsuite/23_containers/set/invalidation/2.cc: Likewise.
+       * testsuite/23_containers/set/modifiers/swap.cc: Likewise.
+       * testsuite/23_containers/stack/members/7158.cc: Likewise.
+       * testsuite/23_containers/vector/bool/6886.cc: Likewise.
+       * testsuite/23_containers/vector/capacity/1.cc: Likewise.
+       * testsuite/23_containers/vector/capacity/8230.cc: Likewise.
+       * testsuite/23_containers/vector/cons/1.cc: Likewise.
+       * testsuite/23_containers/vector/cons/2.cc: Likewise.
+       * testsuite/23_containers/vector/cons/3.cc: Likewise.
+       * testsuite/23_containers/vector/cons/6513.cc: Likewise.
+       * testsuite/23_containers/vector/element_access/1.cc: Likewise.
+       * 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/modifiers/1.cc: Likewise.
+       * testsuite/23_containers/vector/modifiers/2.cc: Likewise.
+       * testsuite/23_containers/vector/modifiers/swap.cc: Likewise.
+       * testsuite/23_containers/vector/resize/1.cc: Likewise.
+       * testsuite/24_iterators/back_insert_iterator.cc: Likewise.
+       * testsuite/24_iterators/front_insert_iterator.cc: Likewise.
+       * testsuite/24_iterators/insert_iterator.cc: Likewise.
+       * testsuite/24_iterators/iterator.cc: Likewise.
+       * testsuite/25_algorithms/copy/1.cc: Likewise.
+       * testsuite/25_algorithms/copy/2.cc: Likewise.
+       * testsuite/25_algorithms/copy/3.cc: Likewise.
+       * testsuite/25_algorithms/copy/4.cc: Likewise.
+       * testsuite/25_algorithms/equal.cc: Likewise.
+       * testsuite/25_algorithms/fill/1.cc: Likewise.
+       * testsuite/25_algorithms/fill/2.cc: Likewise.
+       * testsuite/25_algorithms/min_max.cc: Likewise.
+       * testsuite/25_algorithms/rotate.cc: Likewise.
+       * testsuite/25_algorithms/unique/1.cc: Likewise.
+       * testsuite/25_algorithms/unique/2.cc: Likewise.
+       * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
+       * testsuite/ext/concept_checks.cc: Likewise.
+       * testsuite/ext/hash_map/1.cc: Likewise.
+       * testsuite/ext/hash_set/1.cc: Likewise.
+       * testsuite/ext/rope/1.cc: Likewise.
+       * testsuite/ext/rope/2.cc: Likewise.
+       * testsuite/ext/rope/3.cc: Likewise.
+       * testsuite/thread/pthread1.cc: Likewise.
+       * testsuite/thread/pthread4.cc: Likewise.
+       * testsuite/thread/pthread5.cc: Likewise.
+       * testsuite/thread/pthread6.cc: Likewise.
+       * testsuite/thread/pthread7-rope.cc: Likewise.
+
+2005-03-15  Zack Weinberg  <zack@codesourcery.com>
+
+       * include/Makefile.am (c++config.h): Depend on DATESTAMP from gcc
+       subdirectory.  Generate #define of __GLIBCXX__ from contents of
+       that file.
+       * include/Makefile.in: Regenerate.
+       * include/bits/c++config: Do not define __GLIBCXX__.
+
+2005-03-15  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/20352
+       * include/std/std_complex.h (pow(const complex<_Tp>&,
+       const _Tp&)): On non-c99 platforms, don't try to compute
+       log of complex zero.
+
+2005-03-10  Ben Elliston  <bje@au.ibm.com>
+
+       * testsuite/22_locale/locale/cons/12658_thread-1.cc: Don't XFAIL
+       on GNU/Linux.
+
+2005-03-07  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/type_traits (is_polymorphic): Don't forget
+       the virtual destructor, thus avoiding warnings.
+       * testsuite/testsuite_tr1.h (class AbstractClass,
+       class PolymorphicClass): Likewise.
+
+2005-03-07  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/std/std_complex.h (pow(const complex<_Tp>&,
+       const complex<_Tp>&)): Dispatch to either __complex_pow(__x.__rep(),
+       __y.__rep()) or __complex_pow(__x, __y) depending on the macro
+       _GLIBCXX_USE_C99_COMPLEX.
+
+2005-03-07  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/std/std_fstream.h (basic_fstream<>::open,
+       basic_ifstream<>::open, basic_ofstream<>::open): Implement the
+       resolution of DR 409 [Ready], call clear() on success.
+       * docs/html/ext/howto.html: Add an entry for DR 409.
+       * docs/html/faq/index.html (4_4): Clarify the new behavior.
+       * testsuite/27_io/basic_ifstream/open/char/1.cc: Adjust.
+       * testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.
+
+2005-03-05  Joseph S. Myers  <joseph@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:
+       XFAIL on *-*-hpux11.23.
+
+2005-03-04  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/type_traits: Add is_base_of.
+       * testsuite/tr1/4_metaprogramming/relationships_between_types/
+       is_base_of/is_base_of.cc: New.
+       * testsuite/tr1/4_metaprogramming/relationships_between_types/
+       is_base_of/typedefs.cc: Likewise.
+
 2005-03-03  Benjamin Kosnik  <bkoz@redhat.com>
 
        * include/tr1/functional: Convert relative path.
        New test of reference_wrapper typedefs and base classes.
        * testsuite/tr1/3_function_objects/result_of.cc: Trivial cleanup
        (e-mail address).
-       
+
 2005-03-02  Douglas Gregor  <doug.gregor@gmail.com>
 
        * include/tr1/function (result_of): New class template.
        * include/tr1/functional/iterator.h: Implementation of TR1
        result_of.
        * testsuite/tr1/3_function_objects/result_of.cc: New test
-       
+
 2005-03-01  Vladimir Merzliakov  <wanderer@rsu.ru>
 
        * testsuite/26_numerics/cmath/c99_classification_macros_c.cc: Tweak.
        cons/auto_ptr_neg.cc: Correct line numbers.
 
        * testsuite/testsuite_abi.cc: Add CXXABI_1.3.1.
-       
+
 2005-02-28  Jonathan Wakely  <redi@gcc.gnu.org>
 
        * include/tr1/memory: Replace checked_deleter with (unchecked)
        * acconfig.h: Same.
        * configure: Regenerate.
        * config.h.in: Same.
-       
+
 2005-02-24  Paolo Carlini  <pcarlini@suse.de>
 
        * include/tr1/functional (mem_fn): Avoid _T, badname on
        (mem_fn): New function template.
        Implementations of TR1 function and mem_fn facilities.
        * include/tr1/functional_iterate.h: Implementations of TR1
-       function and mem_fn facilities. 
+       function and mem_fn facilities.
        * testsuite/tr1/3_function_objects/function/1.cc: New
        test of std::tr1::function.
        * testsuite/tr1/3_function_objects/function/2.cc: New
        * testsuite/tr1/3_function_objects/function/9.cc: New
        test of std::tr1::function.
        * testsuite/tr1/3_function_objects/mem_fn.cc: New test of
-       std::tr1::mem_fn. 
-       
+       std::tr1::mem_fn.
+
 2005-02-23  Paolo Carlini  <pcarlini@suse.de>
 
        * include/tr1/type_traits: Implement is_convertible.
        is_function/is_function.cc: Add testcase.
 
 2005-02-22  Benjamin Kosnik  <bkoz@redhat.com>
-       
+
        * scripts/check_performance: Tweaks.
 
        * testsuite/27_io/basic_ostream/inserters_other/wchar_t/2.cc: Name
        * testsuite/tr1/6_containers/unordered/find/map1.cc: New test.
        * testsuite/tr1/6_containers/unordered/find/multimap1.cc: New test.
        * testsuite/tr1/6_containers/unordered/find/multiset1.cc: New test.
-       
+
 2005-02-19  Hans-Peter Nilsson  <hp@axis.com>
 
        PR libstdc++/20071
        * testsuite/tr1/6_containers/unordered/insert/multimap_range.cc: New test.
        * testsuite/tr1/6_containers/unordered/insert/multiset_range.cc: New test.
        * testsuite/tr1/6_containers/unordered/insert/set_range.cc: New test.
-       
+
 2005-02-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
 
        * testsuite/thread/pthread1.cc: Do not invoke pthread_setconcurrency
        * testsuite/tr1/6_containers/unordered/instantiate/multimap.cc: New test.
        * testsuite/tr1/6_containers/unordered/instantiate/multiset.cc: New test.
        * testsuite/tr1/6_containers/unordered/instantiate/set.cc: New test.
-       
+
 2005-02-16  Paolo Carlini  <pcarlini@suse.de>
 
        * testsuite/23_containers/set/modifiers/16728.cc:
 
 2005-02-15  Paolo Carlini  <pcarlini@suse.de>
            Jon Grimm  <jgrimm2@us.ibm.com>
-       
+
        PR libstdc++/19955
        * include/bits/locale_facets.h (ctype<char>::_M_narrow_init()):
        Fix the logic setting _M_narrow_ok: first check whether the
 2005-01-31  Brad Spencer  <spencer@infointeractive.com>
 
        * crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
-       * configure: Regenerated.       
+       * configure: Regenerated.
 
 2005-01-31  Mark Mitchell  <mark@codesourcery.com>
 
        is_abstract.cc: New.
        * testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
        typedefs.cc: Likewise.
-       
+
        * include/tr1/type_traits (is_function): Rewrite, use the conversion
        F& -> F* instead, thus avoiding problems with abstract classes.
        * testsuite/tr1/4_metaprogramming/primary_type_categories/
 
        * testsuite/27_io/basic_ostream/endl/char/1.cc: Minor tweaks.
        * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
-       * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise. 
+       * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
        * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
        * testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
        * testsuite/27_io/basic_ostream/flush/char/
        of aligned.
 
 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
-            Andreas Jaeger  <aj@suse.de>
+           Andreas Jaeger  <aj@suse.de>
 
        PR libstdc++/19343
        * include/bits/functexcept.h: Mark the helpers as 'noreturn'.
 2005-01-20  Benjamin Kosnik  <bkoz@redhat.com>
 
        * testsuite/Makefile.am (check-compile): New.
-       * testsuite/Makefile.in: Regenerate.    
+       * testsuite/Makefile.in: Regenerate.
        * scripts/check_compile_time: New.
        * scripts/check_performance: Tweaks.
 
        * testsuite/performance/20_util/allocator/insert.cc: Remove bogus
        return, add return.
        * testsuite/performance/20_util/allocator/map_thread.cc: Same.
-       
+
 2005-01-17  Paolo Carlini  <pcarlini@suse.de>
 
        PR libstdc++/19433
        Obtain amortized constant complexity if t is inserted right after
        p - not before p - as per Table 69.
        * testsuite/performance/23_containers/set_insert_from_sorted.cc: New.
-       
+
        * testsuite/23_containers/multiset/insert/2.cc: New.
        * testsuite/23_containers/set/insert/1.cc: Likewise.
-       
+
        * testsuite/performance/23_containers/set_create_from_sorted.cc:
        Simplify.
 
        enc_traits to...
        * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
        * include/ext/codecvt_specializations.h: ...here. Remove
-       _GLIBCXX_USE___ENC_TRAITS. 
+       _GLIBCXX_USE___ENC_TRAITS.
        (__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
        (enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
        namespace.
        uglified data members of basic_filebuf, including _M_buf,
        _M_buf_size, _M_mode, _M_pback_init.
        * include/std/std_fstream.h: Same.
-       
+
 2005-01-05  Benjamin Kosnik  <bkoz@redhat.com>
 
-       * testsuite/testsuite_hooks.h: 
+       * testsuite/testsuite_hooks.h:
        (copy_constructor::mark_call):  Use __throw_runtime_error.
        (assignment_operator::mark_call): Same.
        * testsuite/testsuite_hooks.cc (verify_demangle): Same.
 
        * testsuite/27_io/basic_filebuf/open/char/9507.cc: Remove child
        process.
-       
+
 2005-01-05  Paolo Carlini  <pcarlini@suse.de>
 
        * src/istream.cc (basic_istream<char>::ignore(streamsize),
        basic_istream<char>::ignore(streamsize, int_type),
        basic_istream<wchar_t>::ignore(streamsize),
        basic_istream<wchar_t>::ignore(streamsize, int_type)): At the end,
-       first check _M_gcount vs __n.   
+       first check _M_gcount vs __n.
        * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
        int_type)): Likewise.
        * testsuite/27_io/basic_istream/ignore/char/4.cc: New.
        * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
        * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
 
-       * configure.ac: Check for sys/ipc.h and sys/sem.h. 
+       * configure.ac: Check for sys/ipc.h and sys/sem.h.
        * config.h.in: Regenerated.
        * configure: Likewise.
        * testsuite/testsuite_hooks.cc (_GLIBCXX_SYSV_SEM): Conditionally
        basic_istream<char>::ignore(streamsize, int_type),
        basic_istream<wchar_t>::ignore(streamsize),
        basic_istream<wchar_t>::ignore(streamsize, int_type)): Avoid
-       _M_gcount overflows.    
+       _M_gcount overflows.
        * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
        int_type)): Likewise; use snextc in the main loop, consistently
        with the specializations above.