+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.