OSDN Git Service

2005-04-05 Kelley Cook <kcook@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index 9d342b4..80a7f32 100644 (file)
@@ -1,3 +1,513 @@
+2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * Makefile.am (ACLOCAL_AMFLAGS): Define.
+       * crossconfig.m4: Wrap file into new GLIBCXX_CROSSCONFIG macro.
+       * configure.ac: Use it.
+       * acinclude.m4: Delete explicit m4_includes and sincludes.
+       * aclocal.m4, configure, Makefile.in, po/Makefile.in, 
+       src/Makefile.in, include/Makefile.in, libmath/Makefile.in, 
+       testsuite/Makefile.in: Regenerate.
+
+2005-04-05  Jonathan Wakely  <redi@gcc.gnu.org>
+
+       * include/tr1/memory, include/tr1/boost_shared_ptr.h: Use mutex
+       to make _Sp_counted_base::add_ref_lock() thread-safe. Check whether
+       to destroy resources by testing for equality, not inequality. Add
+       empty critical sections to solve memory visibility issues.
+       * testsuite/tr1/2_general_utilities/memory/
+       shared_ptr/cons/auto_ptr_neg.cc: Use dg-excess-errors instead of
+       explicitly listing line numbers which need to be kept in sync.
+       * testsuite/tr1/2_general_utilities/memory/
+       shared_ptr/assign/auto_ptr_neg.cc: Same.
+       * testsuite/tr1/2_general_utilities/memory/
+       shared_ptr/assign/auto_ptr_rvalue_neg.cc: Same.
+       * testsuite/tr1/2_general_utilities/memory/
+       shared_ptr/cons/weak_ptr_expired.cc: Make XFAIL for consistency when
+       -fno-exceptions.
+       * testsuite/tr1/2_general_utilities/memory/
+       enable_shared_from_this/not_shared.cc: Add explanatory comments.
+       * testsuite/tr1/2_general_utilities/memory/
+       enable_shared_from_this/not_shared2.cc: Same.
+       * testsuite/tr1/2_general_utilities/memory/
+       enable_shared_from_this/not_shared3.cc: Same.
+
+2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * acconfig.h: Delete macros already AC_DEFINED.
+       * config.h.in: Regenerate.
+
+2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * acconfig.h (HAVE_MODF): Remove.
+       * linkage.m4: Check for modf.
+       * config.h.in, configure: Regenerate.
+
+2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * acconfig.h (ENABLE_NLS, HAVE_CATGETS): Remove.
+       (HAVE_GETTEXT, HAVE_STPCPY): Likewise.
+       * config.h.in: Regenerate.
+       
+2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Use m4 translit macro 
+       to convert to uppercase instead of shelling out to tr.
+       * acconfig.h: Remove now redundant HAVE__BUILTINS_*.
+       * configure, config.h.in: Regenerate.
+
+2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * acconfig.h (HAVE_TANL): Correct cut-and-paste typo.
+       * config.h.in: Regenerate.
+
+2005-04-04  Mark Mitchell  <mark@codesourcery.com>
+
+       * testsuite/Makefile.am (check-local): Remove.
+       (curent_symbols.txt): Likewise.
+       (check-abi): Do not depend on current_symbols.txt.
+       * testsuite/Makefile.in: Regenerated.
+       * testsuite/libstdc++-abi/abi.exp: Build current_symbols.txt.
+
+2005-04-02  Douglas Gregor  <doug.gregor@gmail.com>
+       
+       * include/tr1/tuple_iterate.h (tuple_element): Use new macro
+       _GLIBCXX_T_NUM_ARGS_PLUS_1 because _T is a macro on Darwin.
+       * include/tr1/repeat.h (_GLIBCXX_T_NUM_ARGS_PLUS_1): Define for
+       each iteration.
+       * scripts/gen_includers.h: Define _GLIBCXX_T_NUM_ARGS_PLUS_1 for
+       each iteration.
+       
+2005-04-01  Douglas Gregor  <doug.gregor@gmail.com>
+
+       * include/tr1/functional (_Maybe_wrap_member_pointer): Wrap up
+       member pointers in _Mem_fn but let other function objects pass
+       through unchanged.
+       * include/tr1/functional_iterator (bind): Reduce number of bind()
+       overloads to two to eliminate ambiguities. Use
+       _Maybe_wrap_member_pointer to handle member pointers gracefully.
+       
+2005-04-01  Mark Mitchell  <mark@codesourcery.com>
+
+       * testsuite/Makefile.am (noinst_PROGRAMS): Remove.
+       (site.exp): Write out the path to the baseline file.
+       (check-abi): Use DejaGNU.
+       (check-abi-verbose): Remove.
+       * testsuite/Makefile.in: Regenerated.
+       * testsuite/abi_check.cc (main): Check the return value from
+       compare_symbols.
+       * testsuite/testsuite_abi.cc (compare_symbols): Return a value.
+       * testsuite/testsuite_abi.h (compare_symbols): Adjust prototype.
+       * testsuite/libstdc++-abi/abi.exp: New file.
+
+2005-03-31  Chris Jefferson  <chris@bubblescope.net>
+
+        * include/tr1/tuple: Support iteration via tuple_iterate.h.
+        * include/tr1/tuple_iterate.h: Iteration file for tuple.
+
+2005-03-31  Douglas Gregor  <doug.gregor@gmail.com>
+
+        * include/Makefile.am (tr1_headers): Add bind and mu repetition
+        headers and reference_wrapper<> forwarding header.
+        * include/Makefile.in: Regenerate.
+        * include/tr1/bind_iterate.h: Implementation of function call
+        operators for the function object returned from tr1::bind().
+        * include/tr1/bind_repeat.h: Bind-specific repetition header,
+        akin to include/tr1/repeat.h.
+        * include/tr1/functional (_Mem_fn): Bug fix: declare result member
+        template for use with result_of.
+        (is_bind_expression): New.
+        (is_placeholder): New.
+        (_Placeholder): New. Placeholder type for bind.
+        (_Mu): New. Implementation detail of bind.
+        (_Bind, _Bind_result): New. Function objects returned by bind.
+        (_GLIBCXX_JOIN): New. Required to create bind placeholders.
+        * include/tr1/functional_iterate.h (_Bind, _Bind_result, bind):
+        New. Implementation of tr1::bind.
+        * include/tr1/mu_iterate.h (_Mu): result template and operator()
+        for the _Mu helper to bind.
+        * include/tr1/ref_fwd.h (reference_wrapper): Forward declaration
+        used by tuple header.
+        (ref): Ditto.
+        (cref): Ditto.
+        * include/tr1/repeat.h: Add bind-specific repetition macros.
+        * include/tr1/tuple: Use reference_wrapper forwarding header for
+        initial definitions, then include <tr1/functional> at the end, to
+        make the circular dependencies work.
+        (tie): Support zero-argument tie() function.
+        * testsuite/tr1/3_function_objects/bind/all_bound.cc: New test of
+        bind() functionality with parameters bound.
+        * testsuite/tr1/3_function_objects/bind/nested.cc: New test of
+        nested bind() expressions.
+        * testsuite/tr1/3_function_objects/bind/placeholders.cc: New test
+        of bind() placeholders.
+        * testsuite/tr1/3_function_objects/bind/ref.cc: New test of bind()
+        with arguments bound via reference_wrapper<>.
+        * scripts/gen_includers.pl: Generate the repetitive part of
+       include/tr1/repeat.h.
+       * scripts/gen_bind_includers.pl: Generate the repetitive part of
+       include/tr1/bind_repeat.h. 
+       
+2005-03-30  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
+
+       * testsuite/Makefile.am (CXX): Use ${SHELL}.
+       (GLIBCXX_INCLUDES): Same.
+       (AM_CXXFLAGS): Same.
+       * testsuite/Makefile.in: Regenerate.
+
+2005-03-25  Mark Mitchell  <mark@codesourcery.com>
+
+       * testsuite/lib/libstdc++.exp (libstdc++_init): Define LOCALEDIR
+       when testing an installed compiler.
+       
+       * testsuite/lib/libstdc++.exp (v3-build_support): Pass -w when
+       compiling support objects.
+
+2005-03-24  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/tr1/memory: Forward to...
+       * include/tr1/boost_shared_ptr.h: ...here. Add Boost Software License.
+       * include/Makefile.am (tr1_headers): Add boost_shared_ptr.h.
+       * include/Makefile.in: Regenerate.
+       * testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
+       auto_ptr_neg.cc: Adjust line numbers.
+
+2005-03-23  Mark Mitchell  <mark@codesourcery.com>
+
+       * testsuite/Makefile.am (all-local): Do not build testsuite_files.
+       * testsuite/Makefile.in: Regenerated. 
+
+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.
+
+       * docs/doxygen/user.cfg.in: Add tr1 includes.
+
+2005-03-03  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/type_traits: Implemenet is_polymorphic.
+       (is_empty): Minor tweaks.
+       * testsuite/testsuite_tr1.h: Add test types.
+       * testsuite/tr1/4_metaprogramming/type_properties/
+       is_polymorphic/is_polymorphic.cc: New.
+       * testsuite/tr1/4_metaprogramming/type_properties/
+       is_polymorphic/typedefs.cc: Likewise.
+       * testsuite/tr1/4_metaprogramming/composite_type_traits/
+       is_union_or_class/is_union_or_class.cc: Add tests.
+
+2005-03-02  Douglas Gregor  <doug.gregor@gmail.com>
+
+       * include/tr1/functional (_Has_result_type): Cleanup.
+       (_Result_of_impl): Handle member data pointers correctly.
+       (reference_wrapper): Support invocation.
+       Move repetition code into new file include/tr1/repeat.h.
+       * include/tr1/functional_iterate.h (reference_wrapper): Support
+       invocation.  Cleanup long lines.
+       * include/tr1/ref_wrap_iterate.h (reference_wrapper): Declare
+       invocation operators.
+       * include/tr1/repeat.h: Code repetition header.
+       * include/Makefile.am: Add ref_wrap_iterate.h, repeat.h.
+       * include/Makefile.in: Add ref_wrap_iterate.h, repeat.h.
+       * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
+       New test of reference_wrapper invocation.
+       * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
+       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.
+
+2005-02-28  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * testsuite/tr1/2_general_utilities/memory/shared_ptr/
+       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)
+       _Sp_deleter as GCC warns about delete on incomplete types anyway.
+
+2005-02-28  Jonathan Wakely  <redi@gcc.gnu.org>
+
+       * include/tr1/memory: Add missing "inline" to __throw_bad_weak_ptr.
+
+2005-02-28  Hans-Peter Nilsson  <hp@axis.com>
+
+       PR target/19065
+       * config/cpu/cris/atomicity.h (__exchange_and_add): In asm, use
+       'Q' constraint, not 'm'.
+
+2005-02-26  Earl Chew  <earl_chew@agilent.com>
+           Christopher Jefferson  <chris@bubblescope.net>
+
+       * include/bits/stl_tree.h (_Rb_tree<>::_M_insert): Don't leak
+       memory if _M_key_compare throws.
+
+2005-02-25  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/type_traits: Add the trivial is_union and is_class;
+       add the __is_union_or_class extension.
+       (is_enum, is_empty): Use the latter.
+       * include/tr1/type_traits_fwd.h: Add __is_union_or_class.
+       * testsuite/testsuite_tr1.h: Add UnionType; trivial formatting
+       fixes.
+       * testsuite/tr1/4_metaprogramming/composite_type_traits/
+       is_union_or_class/is_union_or_class.cc: New.
+       * testsuite/tr1/4_metaprogramming/composite_type_traits/
+       is_union_or_class/typedefs.cc: Likewise.
+
 2005-02-24  Benjamin Kosnik  <bkoz@redhat.com>
 
        * testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Guard
        * 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.