+2006-02-22 Paolo Carlini <pcarlini@suse.de>
+
+ * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_const_node_iterator.html:
+ Fix links
+ * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_node_iterator.html:
+ Likewise.
+ * docs/html/ext/pb_assoc/hash_based_containers.html: Likewise.
+ * docs/html/ext/pb_assoc/hash_standard_resize_policy.html: Likewise.
+ * docs/html/ext/pb_assoc/interface.html: Likewise..
+ * docs/html/ext/pb_assoc/list_updates.html: Likewise.
+ * docs/html/ext/pb_assoc/lu_based_containers.html: Likewise.
+ * docs/html/ext/pb_assoc/resize_policies.html: Likewise.
+ * docs/html/ext/pb_assoc/sample_probe_fn.html: Likewise.
+ * docs/html/ext/pb_assoc/sample_range_hashing.html: Likewise.
+ * docs/html/ext/pb_assoc/sample_ranged_hash_fn.html: Likewise.
+ * docs/html/ext/pb_assoc/sample_ranged_probe_fn.html: Likewise.
+ * docs/html/ext/pb_assoc/sample_resize_policy.html: Likewise.
+ * docs/html/ext/pb_assoc/tree_assoc_cntnr_const_node_iterator.html:
+ Likewise.
+ * docs/html/ext/pb_assoc/tree_assoc_cntnr_node_iterator.html: Likewise.
+
+2006-02-22 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/26132
+ * include/tr1/hashtable (hashtable<>::rehash): Define.
+ * testsuite/tr1/6_containers/unordered/hashtable/26132.cc: New.
+
+ * include/tr1/hashtable: Trivial formatting and stylistic fixes.
+
+ * testsuite/tr1/headers.cc: remove <tr1/hashtable>, not a tr1 header,
+ only an implementation detail.
+
+2006-02-22 Paolo Carlini <pcarlini@suse.de>
+
+ * include/debug/list (splice): Remove splice_alloc check, redundant
+ after implementing the splice bits of N1599.
+
+2006-02-21 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/c_std/cmath.tcc: Use _GLIBCXX_BEGIN_NAMESPACE,
+ _GLIBCXX_END_NAMESPACE.
+
+2006-02-21 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/c++config: Simplify debug namespaces.
+ * include/ext/hash_set: Specialize insert_iterator after norm,
+ debug containers have been (optionally) declared. Use nested
+ namespaces.
+ * include/ext/hash_map: Same.
+ * include/debug/hash_map.h (insert): Add specialization for value
+ pointer types.
+ * include/debug/hash_set.h (insert): Same.
+ * include/debug/hash_multimap.h: Change __gnu_debug_def to __debug.
+ * include/debug/set.h: Same.
+ * include/debug/bitset: Same.
+ * include/debug/multiset.h: Same.
+ * include/debug/hash_multiset.h: Same.
+ * include/debug/vector: Same.
+ * include/debug/map.h: Same.
+ * include/debug/deque: Same.
+ * include/debug/list: Same.
+ * include/debug/multimap.h. Same.
+ * include/debug/macros.h: Use __gnu_debug.
+ * include/debug/debug.h: Same.
+ * include/debug/formatter.h: Same.
+ * include/debug/safe_sequence.h: Same.
+ * include/debug/functions.h: Same.
+ * include/debug/safe_base.h: Same.
+ * include/debug/safe_iterator.h: Same.
+ * include/debug/safe_iterator.tcc: Same.
+ (_M_invalidate): Adjust compare order.
+ * include/debug/string: Change std::__gnu_debug to __gnu_debug.
+ * include/ext/hashtable.h: Formatting fixes.
+ * include/bits/stl_map.h: Formatting fixes.
+ * src/compatibility.cc: Adjust compatibility symbols for old debug
+ mode model.
+ * src/debug_list.cc: Tweak.
+ * src/debug.cc: Adjust namespaces.
+ * docs/html/debug_mode.html: Adjust namespace names.
+ * testsuite/25_algorithms/heap/heap.cc: Restore _GLIBCXX_DEBUG
+ macro guards, as count values differ when in debug mode.
+ * testsuite/23_containers/vector/26412.cc: Move to...
+ * testsuite/23_containers/vector/26412-1.cc: ... here.
+ * testsuite/23_containers/vector/26412-2.cc: Add.
+
+ * include/ext/pb_assoc/detail/standard_policies.hpp
+ (PB_ASSOC_HASH_NAMESPACE): Remove, use __gnu_cxx::hash_map and
+ std::equal_to.
+
+ * configure.ac (libtool_VERSION): To 6:8:0.
+ * configure: Regenerate.
+ * config/abi/pre/gnu.ver: Revert to exporting __gnu_debug symbols.
+ (GLIBCXX_3.4.8): New.
+ * testsuite/testsuite_abi.cc: Add GLIBCXX_3.4.8 to known versions.
+
+2006-02-21 Paolo Carlini <pcarlini@suse.de>
+
+ * include/tr1/hashtable: Trivial formatting fixes.
+
+2006-02-20 Paolo Carlini <pcarlini@suse.de>
+
+ Revert recent commit for libstdc++/26211, now suspended waiting for
+ DR 342 (reopened) to reach a new resolution.
+ * include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
+ seekg(off_type, ios_base::seekdir)): Remove sentry.
+ * testsuite/27_io/basic_istream/seekg/char/26211.cc: Remove.
+ * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Revert changes.
+ * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
+ * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
+
+2006-02-19 Paolo Carlini <pcarlini@suse.de>
+
+ * include/std/std_sstream.h (basic_stringbuf<>::setbuf): Simply
+ clear the internal _M_string, adjust _M_sync call.
+ * include/bits/sstream.tcc (basic_stringbuf<>::_M_sync): Adjust
+ consistently for calls from setbuf.
+
+2006-02-17 Paolo Carlini <pcarlini@suse.de>
+ Howard Hinnant <hhinnant@apple.com>
+
+ PR libstdc++/26250
+ * include/bits/sstream.tcc (basic_stringbuf<>::overflow): Tweak
+ to leave epgtr() just past the new write position, as per the
+ relevant bits of 27.7.1.3/8 (not changed by DR 432).
+ * testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: New.
+ * testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Same.
+
+ * docs/html/ext/howto.html: Add entries for DR 169 and DR 432.
+
+ * include/std/std_sstream.h (basic_stringbuf<>::_M_sync): Move out
+ of line...
+ * include/bits/sstream.tcc: ... here.
+
+2006-02-16 Joseph S. Myers <joseph@codesourcery.com>
+
+ PR libstdc++/14939
+ * config/os/uclibc/ctype_base.h, config/os/uclibc/ctype_inline.h,
+ config/os/uclibc/ctype_noninline.h, config/os/uclibc/os_defines.h:
+ New.
+ * acinclude.m4 (GLIBCXX_CONFIGURE): Test whether using uClibc.
+ * configure.host: Use os/uclibc for uClibc.
+ * crossconfig.m4 (*-linux*): Use link tests. Don't hardcode
+ presence of math functions.
+ * configure: Regenerate.
+
+2006-02-12 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/26211
+ * include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
+ seekg(off_type, ios_base::seekdir)): Construct a sentry, as per
+ 27.6.1.3/1.
+ * testsuite/27_io/basic_istream/seekg/char/26211.cc: New.
+ * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Adjust.
+ * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
+ * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
+
+2006-02-10 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/26181
+ * include/bits/streambuf.tcc (__copy_streambufs_eof): New, like
+ the existing __copy_streambufs but reporting eof in input.
+ (__copy_streambufs): Just use the latter.
+ * src/streambuf.cc (__copy_streambufs_eof): Adjust specializations
+ of __copy_streambufs.
+ * include/bits/istream.tcc (operator>>(__streambuf_type*)): Use
+ __copy_streambufs_eof instead.
+ * include/std/std_streambuf.h: Adjust.
+ * src/streambuf-inst.cc: Adjust.
+ * config/abi/pre/gnu.ver: Export the new symbols.
+ * testsuite/27_io/basic_istream/extractors_other/char/26181.cc: New.
+ * testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_other/char/1.cc: Adjust.
+ * testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc:
+ Likewise.
+
+2006-02-08 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/26142
+ * include/debug/debug.h: Move debug alias inside namespace std,
+ same with namespace __gnu_cxx. Add top-level __gnu_debug
+ namespace.
+ * include/debug/hash_multimap.h: Nest within __gnu_cxx, not
+ std. Also, change nesting namespace name from __gnu_debug_def to
+ __gnu_debug.
+ * include/debug/hash_map.h: Same.
+ * include/debug/hash_multiset.h: Same.
+ * include/debug/hash_set.h: Same.
+ * docs/html/debug.html: Same.
+ * testsuite/23_containers/vector/26412.cc: New.
+ * testsuite/23_containers/vector/invalidation/1.cc: Correct
+ qualifications for debug namespace change.
+ * testsuite/23_containers/vector/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/3.cc: Same.
+ * testsuite/23_containers/vector/invalidation/4.cc: Same.
+ * testsuite/23_containers/deque/invalidation/1.cc: Same.
+ * testsuite/23_containers/deque/invalidation/2.cc: Same.
+ * testsuite/23_containers/deque/invalidation/3.cc: Same.
+ * testsuite/23_containers/deque/invalidation/4.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/1.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/2.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/1.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/2.cc: Same.
+ * testsuite/23_containers/bitset/invalidation/1.cc: Same.
+ * testsuite/23_containers/bitset/cons/16020.cc: Same.
+ * testsuite/23_containers/bitset/operations/13838.cc: Same.
+ * testsuite/23_containers/list/invalidation/1.cc: Same.
+ * testsuite/23_containers/list/invalidation/2.cc: Same.
+ * testsuite/23_containers/list/invalidation/3.cc: Same.
+ * testsuite/23_containers/list/invalidation/4.cc: Same.
+ * testsuite/23_containers/set/invalidation/1.cc: Same.
+ * testsuite/23_containers/set/invalidation/2.cc: Same.
+ * testsuite/23_containers/map/invalidation/1.cc: Same.
+ * testsuite/23_containers/map/invalidation/2.cc: Same.
+ * testsuite/23_containers/map/modifiers/insert/16813.cc: Same.
+ * testsuite/21_strings/basic_string/2.cc: Same.
+
+2006-02-08 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/26133 (DR 241, [WP])
+ * include/bits/stl_algo.h (__unique_copy(,,, forward_iterator_tag,
+ output_iterator_tag), __unique_copy(,,, input_iterator_tag,
+ output_iterator_tag), __unique_copy(,,, input_iterator_tag,
+ forward_iterator_tag), and predicated counterparts): Add.
+ (__unique_copy(,,, output_iterator_tag), __unique_copy(,,,
+ forward_iterator_tag), and predicated counterparts): Remove.
+ (unique_copy): Adjust, dispatch to the three helpers above.
+ * testsuite/25_algorithms/unique_copy/2.cc: New.
+ * testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
+ * testsuite/25_algorithms/unique_copy/3.cc: Likewise.
+ * docs/html/ext/howto.html: Add an entry for DR 241.
+
+ * testsuite/25_algorithms/unique_copy/1.cc: Minor cosmetic changes.
+
+2006-02-07 Jakub Jelinek <jakub@redhat.com>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.ac (_GLIBCXX_LONG_DOUBLE_COMPAT): New check.
+ If true, set also port_specific_symbol_files and create
+ as_symver_specs.
+ (GLIBCXX_LDBL_COMPAT): New GLIBCXX_CONDITIONAL.
+ * configure: Rebuilt.
+ * config.h.in: Rebuilt.
+ * config/os/gnu-linux/ldbl-extra.ver: New file.
+ * config/abi/pre/gnu.ver: Make sure no __float128 symbols are
+ exported.
+ * include/bits/c++config (_GLIBCXX_LONG_DOUBLE_COMPAT,
+ _GLIBCXX_LDBL_NAMESPACE, _GLIBCXX_BEGIN_LDBL_NAMESPACE,
+ _GLIBCXX_END_LDBL_NAMESPACE): Define.
+ * include/bits/localefwd.h: Use them to conditionally scope facets.
+ * include/bits/locale_facets.h: Surround std::{money,num}_{get,put}
+ with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
+ Surround std::{money,num}_{get,put}
+ with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
+ [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::money_get): Add __do_get method.
+ [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::money_put): Add __do_put method.
+ [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::num_get): Add __do_get method.
+ [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::num_put): Add __do_put method.
+ * include/bits/locale_facets.tcc: Surround std::{money,num}_{get,put}
+ with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
+ (std::money_get::__do_get, std::money_put::__do_put,
+ std::num_get::__do_get, std::num_put::__do_put): New
+ specializations.
+ * include/Makefile.am: Conditionally define
+ _GLIBCXX_LONG_DOUBLE_COMPAT in c++config.
+ * include/Makefile.in: Regenerate.
+ * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT] (_GLIBCXX_LOC_ID,
+ _GLIBCXX_SYNC_ID): Define, use them.
+ * src/compatibility-ldbl.cc: New file.
+ * src/complex_io.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Add compatibility
+ symbols.
+ * src/limits.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * src/locale-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * src/locale-misc-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * src/istream-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * src/ostream-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * src/wlocale-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * src/compatibility.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
+ * config/locale/generic/c_locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]:
+ Likewise.
+ * config/locale/gnu/c_locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]:
+ Likewise.
+ * src/Makefile.am (libstdc++-symbol.ver): Append instead of
+ insert in the middle if port specific symbol file requests it.
+ (ldbl_compat_sources): New variable.
+ (sources): Use it.
+ (compatibility-ldbl.lo, compatibility-ldbl.o): New rules.
+ * src/Makefile.in: Rebuilt.
+ * testsuite/testsuite_abi.cc: Recognize GLIBCXX_LDBL_3.4,
+ GLIBCXX_LDBL_3.4.7, CXXABI_LDBL_1.3.
+
+2006-02-07 Paolo Carlini <pcarlini@suse.de>
+
+ * include/tr1/hashtable: Trivial formatting fixes.
+
+2006-02-07 Paolo Carlini <pcarlini@suse.de>
+ Zak Kipling <zak@transversal.com>
+
+ PR libstdc++/26127
+ * include/tr1/hashtable (hashtable<>::key_equal): Define.
+ (hashtable<>::bucket, rehash_base<>::max_load_factor): Fix.
+ * testsuite/tr1/6_containers/unordered/hashtable/26127.cc: New.
+
+2006-02-07 Paolo Carlini <pcarlini@suse.de>
+
+ * include/tr1/cmath: New.
+ * include/tr1/cstdlib: Likewise.
+ * include/tr1/ctime: Likewise.
+ * include/tr1/math.h: Likewise.
+ * include/tr1/stdlib.h: Likewise.
+ * include/Makefile.am: Add.
+ * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <math.h> checks.
+ * testsuite/tr1/8_c_compatibility/cmath/functions.cc: New.
+ * testsuite/tr1/8_c_compatibility/cstdlib/functions.cc: Likewise.
+ * testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Likewise.
+ * testsuite/tr1/headers.cc: Update.
+
+ * include/tr1/cinttypes: Do not provide abs and div, conflicting
+ with the above overloads for _Longlong types.
+ * include/tr1/inttypes.h: Adjust.
+ * testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Adjust.
+
+ * docs/html/ext/tr1.html: Update.
+
+ * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Tweak.
+
+ * include/Makefile.in: Regenerate.
+ * config.h.in: Likewise.
+ * configure: Likewise.
+
2006-02-07 Mark Mitchell <mark@codesourcery.com>
* testsuite/testsuite_tr1.h (test_property): New function.