2006-12-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/30226
* config/abi/pre/gnu.ver: Do not export ctype<char>::widen.
2006-12-28 Paolo Carlini <pcarlini@suse.de>
* include/tr1/array (array<>::_M_at): Remove.
(array<>::_M_check): Add.
(array<>::at): Use the latter.
2006-12-22 Paolo Carlini <pcarlini@suse.de>
DR 541, [WP].
* include/std/memory (auto_ptr<void>): Add specialization.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/
assign/dr541.cc: New.
* testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust
dg-error markers.
* docs/html/ext/howto.html: Add an entry for DR 541.
2006-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* docs/html/27_io/howto.html: Fix typos.
* docs/html/24_iterators/howto.html: Likewise.
* docs/html/18_support/howto.html: Likewise.
* docs/html/21_strings/howto.html: Likewise.
* docs/html/ext/howto.html: Likewise.
* docs/html/ext/ballocator_doc.html: Likewise.
* docs/html/17_intro/porting-howto.xml: Likewise.
* docs/html/17_intro/howto.html: Likewise.
* docs/html/22_locale/howto.html: Likewise.
* docs/html/faq/index.html: Likewise.
* docs/doxygen/tables.html: Likewise.
2006-12-13 Ian Lance Taylor <iant@google.com>
PR c++/19564
PR c++/19756
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
Add parentheses around && within || to avoid warning.
(num_get<>::_M_extract_int): Likewise.
(money_get<>::_M_extract): Likewise.
(num_get<>::do_get(iter_type, iter_type, ios_base&,
ios_base::iostate&, void*&)): Add parentheses around & within | to
avoid warning.
(num_put<>::do_put(iter_type, ios_base&, char_type, const void*)):
Likewise.
* include/bits/streambuf_iterator.h (istreambuf_iterator::equal):
Add parentheses around && within || to avoid warning.
* libsupc++/tinfo.cc (__do_dyncast): Likewise.
* src/locale.cc (locale::_S_normalize_category): Likewise.
* include/bits/stl_tree.h (_Rb_tree<>::_M_insert_unique): Add
braces to avoid ambiguous else warning.
* src/strstream.cc (strstreambuf::_M_free): Likewise.
* src/tree.cc (_Rb_tree_rebalance_for_erase): Likewise.
2006-12-12 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28265
* crossconfig.m4: Remove GLIBCXX_CHECK_ICONV_SUPPORT call for
mingw crosses.
* configure: Regenerate.
2006-12-12 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/26497
* crossconfig.m4: Add GLIBCXX_CHECK_LINKER_FEATURES for Solaris.
* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Set
glibcxx_gnu_ld_version only when with GNU ld confirmed.
* configure: Regenerate.
2006-12-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28125
* acinclude.m4 (GLIBCXX_CHECK_ICONV_SUPPORT): Remove link test, ie
AC_CHECK_LIB for libiconv. Instead, use bits of AM_ICONV.
* configure: Regenerate.
* scripts/testsuite_flags.in (cxxldflags): Add LIBICONV bits.
2006-12-11 Richard Guenther <rguenther@suse.de>
Paolo Carlini <pcarlini@suse.de>
* include/ext/pb_ds/detail/pat_trie_/traits.hpp: Qualify types.
* include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Likewise.
* include/ext/rope: Likewise.
* include/bits/stl_tree.h (struct _Rb_tree): Change the _Link_type
typedefs to use _Rb_tree_node<_Val> directly.
(_M_get_node, _M_put_node): Use _Link_type.
2006-12-10 Paolo Carlini <pcarlini@suse.de>
* src/valarray-inst.cc (__gslice_to_index): Optimize performance.
* testsuite/performance/26_numerics/valarray_gslice_to_index.cc: New.
2006-12-08 Jakub Jelinek <jakub@redhat.com>
* testsuite/util/testsuite_hooks.cc (set_memory_limits): Don't set
RLIMIT_AS below 16MB on x86_64-linux.
2006-12-06 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (std_headers_rename): Remove.
(c_base_headers_rename): Remove.
(std_headers): Adjust to true names.
(c_base_headers): Adjust to true names.
(stamp-c_base, stamp_std, stamp_c_base_extra): Adjust.
* configure: Regenerate.
* include/Makefile.in: Regenerate.
* include/std/std_algorithm.h: To...
* include/std/std_bitset.h: To...
* include/std/std_complex.h: To...
* include/std/std_deque.h: To...
* include/std/std_fstream.h: To...
* include/std/std_functional.h: To...
* include/std/std_iomanip.h: To...
* include/std/std_iosfwd.h: To...
* include/std/std_ios.h: To...
* include/std/std_iostream.h: To...
* include/std/std_istream.h: To...
* include/std/std_iterator.h: To...
* include/std/std_limits.h: To...
* include/std/std_list.h: To...
* include/std/std_locale.h: To...
* include/std/std_map.h: To...
* include/std/std_memory.h: To...
* include/std/std_numeric.h: To...
* include/std/std_ostream.h: To...
* include/std/std_queue.h: To...
* include/std/std_set.h: To...
* include/std/std_sstream.h: To...
* include/std/std_stack.h: To...
* include/std/std_stdexcept.h: To...
* include/std/std_streambuf.h: To...
* include/std/std_string.h: To...
* include/std/std_utility.h: To...
* include/std/std_valarray.h: To...
* include/std/std_vector.h: To...
* include/std/algorithm: ...this.
* include/std/bitset: ...this.
* include/std/complex: ...this.
* include/std/deque: ...this.
* include/std/fstream: ...this.
* include/std/functional: ...this.
* include/std/iomanip: ...this.
* include/std/iosfwd: ...this.
* include/std/ios: ...this.
* include/std/iostream: ...this.
* include/std/istream: ...this.
* include/std/iterator: ...this.
* include/std/limits: ...this.
* include/std/list: ...this.
* include/std/locale: ...this.
* include/std/map: ...this.
* include/std/memory: ...this.
* include/std/numeric: ...this.
* include/std/ostream: ...this.
* include/std/queue: ...this.
* include/std/set: ...this.
* include/std/sstream: ...this.
* include/std/stack: ...this.
* include/std/stdexcept: ...this.
* include/std/streambuf: ...this.
* include/std/string: ...this.
* include/std/utility: ...this.
* include/std/valarray: ...this.
* include/std/vector: ...this.
* include/c_std/std_cassert.h: To...
* include/c_std/std_cctype.h: To...
* include/c_std/std_cerrno.h: To...
* include/c_std/std_cfloat.h: To...
* include/c_std/std_ciso646.h: To...
* include/c_std/std_climits.h: To...
* include/c_std/std_clocale.h: To...
* include/c_std/std_cmath.h: To...
* include/c_std/std_csetjmp.h: To...
* include/c_std/std_csignal.h: To...
* include/c_std/std_cstdarg.h: To...
* include/c_std/std_cstddef.h: To...
* include/c_std/std_cstdio.h: To...
* include/c_std/std_cstdlib.h: To...
* include/c_std/std_cstring.h: To...
* include/c_std/std_ctime.h: To...
* include/c_std/std_cwchar.h: To...
* include/c_std/std_cwctype.h: To...
* include/c_std/cassert: ...this.
* include/c_std/cctype: ...this.
* include/c_std/cerrno: ...this.
* include/c_std/cfloat: ...this.
* include/c_std/ciso646: ...this.
* include/c_std/climits: ...this.
* include/c_std/clocale: ...this.
* include/c_std/cmath: ...this.
* include/c_std/csetjmp: ...this.
* include/c_std/csignal: ...this.
* include/c_std/cstdarg: ...this.
* include/c_std/cstddef: ...this.
* include/c_std/cstdio: ...this.
* include/c_std/cstdlib: ...this.
* include/c_std/cstring: ...this.
* include/c_std/ctime: ...this.
* include/c_std/cwchar: ...this.
* include/c_std/cwctype: ...this.
* include/c/std_cassert.h: To...
* include/c/std_cctype.h: To...
* include/c/std_cerrno.h: To...
* include/c/std_cfloat.h: To...
* include/c/std_ciso646.h: To...
* include/c/std_climits.h: To...
* include/c/std_clocale.h: To...
* include/c/std_cmath.h: To...
* include/c/std_csetjmp.h: To...
* include/c/std_csignal.h: To...
* include/c/std_cstdarg.h: To...
* include/c/std_cstddef.h: To...
* include/c/std_cstdio.h: To...
* include/c/std_cstdlib.h: To...
* include/c/std_cstring.h: To...
* include/c/std_ctime.h: To...
* include/c/std_cwchar.h: To...
* include/c/std_cwctype.h: To...
* include/c/cassert: ...this.
* include/c/cctype: ...this.
* include/c/cerrno: ...this.
* include/c/cfloat: ...this.
* include/c/ciso646: ...this.
* include/c/climits: ...this.
* include/c/clocale: ...this.
* include/c/cmath: ...this.
* include/c/csetjmp: ...this.
* include/c/csignal: ...this.
* include/c/cstdarg: ...this.
* include/c/cstddef: ...this.
* include/c/cstdio: ...this.
* include/c/cstdlib: ...this.
* include/c/cstring: ...this.
* include/c/ctime: ...this.
* include/c/cwchar: ...this.
* include/c/cwctype: ...this.
2006-12-05 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/localefwd.h: Consistent @file placement, use
include/ as part of the path for files that have shadows instead of no
name.
* include/bits/valarray_after.h: Same.
* include/bits/gslice_array.h: Same.
* include/bits/gslice.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/postypes.h: Same.
* include/bits/codecvt.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stringfwd.h: Same.
* include/bits/c++config: Same.
* include/bits/valarray_array.h: Same.
* include/bits/valarray_before.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/c/std_cerrno.h: Same.
* include/precompiled/extc++.h: Same.
* include/precompiled/stdtr1c++.h: Same.
* include/precompiled/stdc++.h: Same.
* include/tr1/cinttypes: Same.
* include/tr1/fenv.h: Same.
* include/tr1/mu_iterate.h: Same.
* include/tr1/cstdio: Same.
* include/tr1/limits.h: Same.
* include/tr1/ctgmath: Same.
* include/tr1/cstdarg: Same.
* include/tr1/tuple: Same.
* include/tr1/float.h: Same.
* include/tr1/stdint.h: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/type_traits_fwd.h: Same.
* include/tr1/hashtable_policy.h: Same.
* include/tr1/cfenv: Same.
* include/tr1/wctype.h: Same.
* include/tr1/ref_fwd.h: Same.
* include/tr1/bind_repeat.h: Same.
* include/tr1/utility: Same.
* include/tr1/climits: Same.
* include/tr1/type_traits: Same.
* include/tr1/stdlib.h: Same.
* include/tr1/cwchar: Same.
* include/tr1/stdio.h: Same.
* include/tr1/ref_wrap_iterate.h: Same.
* include/tr1/cstdint: Same.
* include/tr1/memory: Same.
* include/tr1/cstdbool: Same.
* include/tr1/cwctype: Same.
* include/tr1/bind_iterate.h: Same.
* include/tr1/math.h: Same.
* include/tr1/random: Same.
* include/tr1/tuple_defs.h: Same.
* include/tr1/cstdlib: Same.
* include/tr1/unordered_map: Same.
* include/tr1/boost_shared_ptr.h: Same.
* include/tr1/cctype: Same.
* include/tr1/random.tcc: Same.
* include/tr1/wchar.h: Same.
* include/tr1/hashtable: Same.
* include/tr1/cmath: Same.
* include/tr1/stdbool.h: Same.
* include/tr1/ctime: Same.
* include/tr1/functional: Same.
* include/tr1/unordered_set: Same.
* include/tr1/inttypes.h: Same.
* include/tr1/functional_iterate.h: Same.
* include/tr1/repeat.h: Same.
* include/tr1/complex: Same.
* include/tr1/cfloat: Same.
* include/tr1/ctype.h: Same.
* include/tr1/stdarg.h: Same.
* include/tr1/tgmath.h: Same.
* include/tr1/array: Same.
* include/tr1/common.h: Same.
* include/std/std_valarray.h: Same.
* include/std/std_iostream.h: Same.
* include/std/std_queue.h: Same.
* include/std/std_algorithm.h: Same.
* include/std/std_streambuf.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_ios.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_iosfwd.h: Same.
* include/std/std_set.h: Same.
* include/std/std_iomanip.h: Same.
* include/std/std_fstream.h: Same.
* include/std/std_functional.h: Same.
* include/std/std_numeric.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_deque.h: Same.
* include/std/std_stdexcept.h: Same.
* include/std/std_utility.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_string.h: Same.
* include/std/std_complex.h: Same.
* include/std/std_memory.h: Same.
* include/std/std_ostream.h: Same.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* include/std/std_sstream.h: Same.
* include/c_std/std_csignal.h: Same.
* include/c_std/std_cstdlib.h: Same.
* include/c_std/std_cstdio.h: Same.
* include/c_std/std_cstdarg.h: Same.
* include/c_std/std_cctype.h: Same.
* include/c_std/std_cerrno.h: Same.
* include/c_std/std_cmath.h: Same.
* include/c_std/std_ctime.h: Same.
* include/c_std/std_clocale.h: Same.
* include/c_std/std_climits.h: Same.
* include/c_std/std_cassert.h: Same.
* include/c_std/cmath.tcc
* include/c_std/std_csetjmp.h: Same.
* include/c_std/std_cwchar.h: Same.
* include/c_std/std_cfloat.h: Same.
* include/c_std/std_cstring.h: Same.
* include/c_std/std_cstddef.h: Same.
* include/c_std/std_cwctype.h: Same.
* config/locale/gnu/c_locale.h: Namespace scope in all files.
* config/locale/gnu/messages_members.h: Same.
* config/locale/gnu/c++locale_internal.h: Same.
* config/locale/gnu/time_members.h: Same.
* config/locale/ieee_1003.1-2001/c_locale.h: Same.
* config/locale/ieee_1003.1-2001/messages_members.h: Same.
* config/locale/generic/c_locale.h: Same.
* config/locale/generic/messages_members.h: Same.
* config/locale/generic/time_members.h: Same.
* config/allocator/mt_allocator_base.h: Same.
* config/allocator/malloc_allocator_base.h: Same.
* config/allocator/new_allocator_base.h: Same.
* config/allocator/pool_allocator_base.h: Same.
* config/allocator/bitmap_allocator_base.h: Same.
* config/os/windiss/ctype_noninline.h: Same.
* config/os/windiss/os_defines.h: Same.
* config/os/windiss/ctype_inline.h: Same.
* config/os/newlib/ctype_noninline.h: Same.
* config/os/newlib/os_defines.h: Same.
* config/os/newlib/ctype_inline.h: Same.
* config/os/aix/ctype_noninline.h: Same.
* config/os/aix/os_defines.h: Same.
* config/os/aix/ctype_inline.h: Same.
* config/os/vxworks/ctype_noninline.h: Same.
* config/os/vxworks/os_defines.h: Same.
* config/os/vxworks/ctype_inline.h: Same.
* config/os/hpux/ctype_noninline.h: Same.
* config/os/hpux/os_defines.h: Same.
* config/os/hpux/ctype_inline.h: Same.
* config/os/mingw32/ctype_noninline.h: Same.
* config/os/mingw32/os_defines.h: Same.
* config/os/mingw32/ctype_inline.h: Same.
* config/os/gnu-linux/ctype_noninline.h: Same.
* config/os/gnu-linux/os_defines.h: Same.
* config/os/gnu-linux/ctype_inline.h: Same.
* config/os/tpf/ctype_noninline.h: Same.
* config/os/tpf/os_defines.h: Same.
* config/os/tpf/ctype_inline.h: Same.
* config/os/uclibc/ctype_noninline.h: Same.
* config/os/uclibc/os_defines.h: Same.
* config/os/uclibc/ctype_inline.h: Same.
* config/os/djgpp/ctype_noninline.h: Same.
* config/os/djgpp/os_defines.h: Same.
* config/os/djgpp/ctype_inline.h: Same.
* config/os/qnx/qnx6.1/ctype_noninline.h: Same.
* config/os/qnx/qnx6.1/ctype_inline.h: Same.
* config/os/bsd/netbsd/ctype_noninline.h: Same.
* config/os/bsd/netbsd/ctype_inline.h: Same.
* config/os/bsd/darwin/ctype_noninline.h: Same.
* config/os/bsd/darwin/ctype_inline.h: Same.
* config/os/bsd/freebsd/ctype_noninline.h: Same.
* config/os/bsd/freebsd/ctype_inline.h: Same.
* config/os/irix/irix5.2/ctype_noninline.h: Same.
* config/os/irix/irix5.2/ctype_inline.h: Same.
* config/os/irix/irix6.5/ctype_noninline.h: Same.
* config/os/irix/irix6.5/ctype_inline.h: Same.
* config/os/solaris/solaris2.5/ctype_noninline.h: Same.
* config/os/solaris/solaris2.5/ctype_inline.h: Same.
* config/os/solaris/solaris2.6/ctype_noninline.h: Same.
* config/os/solaris/solaris2.6/ctype_inline.h: Same.
* config/os/solaris/solaris2.7/ctype_noninline.h: Same.
* config/os/solaris/solaris2.7/ctype_inline.h: Same.
* config/os/generic/ctype_noninline.h: Same.
* config/os/generic/os_defines.h: Same.
* config/os/generic/ctype_inline.h: Same.
* config/cpu/arm/cxxabi_tweaks.h: Same.
* config/cpu/powerpc/cpu_defines.h: Same.
* config/cpu/generic/cxxabi_tweaks.h: Same.
* config/cpu/generic/cpu_defines.h: Same.
* config/cpu/generic/atomic_word.h: Same.
* config/io/c_io_stdio.h: Same.
* config/abi/compatibility.h: Same.
* docs/doxygen/user.cfg.in: Adjust file list.
2006-12-05 Paolo Carlini <pcarlini@suse.de>
DR 543, [Ready].
* include/bits/slice_array.h (slice::slice()): Implement the
resolution.
* include/bits/gslice.h (gslice::_Indexer::_Indexer()): Add.
(gslice::gslice()): Use it.
* testsuite/26_numerics/valarray/dr543.cc: New.
* docs/html/ext/howto.html: Add an entry for DR 543.
2006-12-05 Benjamin Kosnik <bkoz@redhat.com>
* include/tr1/tuple: Consistent include guards.
* include/tr1/type_traits: Same.
* include/tr1/array: Same.
2006-12-04 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29989 (again)
* include/bits/c++config: #undef min and max.
* testsuite/18_support/numeric_limits/29989.cc: New.
2006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
* configure: Regenerate.
2006-12-03 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29989
* include/bits/stl_algobase.h: Remove min and max #undefs.
2006-12-02 Howard Hinnant <hhinnant@apple.com>
* acinclude.m4: Allow OPTIMIZE_CXXFLAGS to be set by configure.host.
* configure.host: Set OPTIMIZE_CXXFLAGS to -fvisibility-inlines-hidden
for x86/darwin.
* configure: Regenerate.
2006-12-01 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__pool_base::_M_get_align): Remove
redundant const qualifier on the return type.
2006-11-29 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/throw_allocator.h: Consistent @file markup.
* include/ext/type_traits.h: Same.
* include/debug/hash_map: Same.
* include/debug/hash_multimap.h: Same.
* include/debug/set.h: Same.
* include/debug/hash_set.h: Same.
* include/debug/formatter.h: Same.
* include/debug/bitset: Same.
* include/debug/set: Same.
* include/debug/multiset.h: Same.
* include/debug/safe_sequence.h: Same.
* include/debug/hash_set: Same.
* include/debug/functions.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/hash_multiset.h: Same.
* include/debug/safe_iterator.tcc: Same.
* include/debug/vector: Same.
* include/debug/map.h: Same.
* include/debug/deque: Same.
* include/debug/hash_map.h: Same.
* include/debug/string: Same.
* include/debug/macros.h: Same.
* include/debug/list: Same.
* include/debug/debug.h: Same.
* include/debug/map: Same.
* include/debug/safe_iterator.h: Same.
* include/debug/multimap.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* config/cpu/generic/atomicity_builtins/atomicity.h: Same.
* config/cpu/generic/atomic_word.h: Same.
* include/tr1/memory: Same.
* include/tr1/random: Same.
* include/std/std_queue.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_deque.h: Same.
* include/std/std_utility.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_string.h: Same.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* libsupc++/typeinfo: Same.
* libsupc++/exception: Same.
* libsupc++/exception_defines.h: Same.
* libsupc++/new: Same.
* include/ext/bitmap_allocator.h: Change namespace __balloc to
__detail.
* src/bitmap_allocator.cc: Same.
* include/bits/cpp_type_traits.h: Change __true_type and
__false_type from global to namespace std scope.
* include/ext/slist: Same.
* include/ext/vstring.h: Same.
* include/ext/vstring.tcc: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/sso_string_base.h: Same.
* include/bits/codecvt.h: Adjust markup so that correct namespace
scope information is in all files.
* include/bits/locale_facets.h: Same. Include ctype_base directly.
* config/os/windiss/ctype_base.h: Add in namespace markup.
* config/os/newlib/ctype_base.h: Same.
* config/os/aix/ctype_base.h: Same.
* config/os/vxworks/ctype_base.h: Same.
* config/os/hpux/ctype_base.h: Same.
* config/os/mingw32/ctype_base.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
* config/os/tpf/ctype_base.h: Same.
* config/os/uclibc/ctype_base.h: Same.
* config/os/djgpp/ctype_base.h: Same.
* config/os/qnx/qnx6.1/ctype_base.h: Same.
* config/os/bsd/netbsd/ctype_base.h: Same.
* config/os/bsd/darwin/ctype_base.h: Same.
* config/os/bsd/freebsd/ctype_base.h: Same.
* config/os/irix/irix5.2/ctype_base.h: Same.
* config/os/irix/irix6.5/ctype_base.h: Same.
* config/os/solaris/solaris2.5/ctype_base.h: Same.
* config/os/solaris/solaris2.6/ctype_base.h: Same.
* config/os/solaris/solaris2.7/ctype_base.h: Same.
* config/os/generic/ctype_base.h: Same.
* include/tr1/mu_iterate.h: Same.
* include/tr1/tuple: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/tuple_defs.h: Same.
* include/tr1/random.tcc: Same.
* include/tr1/functional: Same.
* include/tr1/functional_iterate.h: Same.
* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Line
number changes.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
* docs/doxygen/user.cfg.in: Update to doxygen 1.5.1.
* docs/html/17_intro/license.html: Updated info for generated docs.
* docs/doxygen/guide.html: Adjust.
* docs/doxygen/run_doxygen: Adjust.
* docs/doxygen/mainpage.html: Same.
* docs/doxygen/doxygroups.cc: Same.
* docs/doxygen/Intro.3: Same.
* docs/doxygen/tables.html: Same.
2006-11-26 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
* include/bits/stl_tree.h (_Rb_tree<>::_M_equal_range): Add.
(equal_range(const key_type&)): Use it.
2006-11-26 Paolo Carlini <pcarlini@suse.de>
* testsuite/23_containers/multiset/operations/1.cc: New.
* testsuite/23_containers/set/operations/1.cc: Likewise.
* testsuite/23_containers/multimap/operations/1.cc: Likewise.
* testsuite/23_containers/map/operations/1.cc: Likewise.
2006-11-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree<>::destroy_node): Uglify.
(_M_erase, erase(iterator), erase(const_iterator)): Adjust
2006-11-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree<>::_M_lower_bound(_Const_Link_type,
_Const_Link_type, const _Key&), _M_upper_bound(_Const_Link_type,
_Const_Link_type, const _Key&)): Add.
(lower_bound(const key_type&), upper_bound(const key_type&),
find(const key_type&)): Call the latter.
2006-11-25 Gawain Bolton <gp.bolton@computer.org>
PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree_rotate_left,
_Rb_tree_rotate_right): Do not declare.
(_Rb_tree<>::_M_insert(_Base_ptr, _Base_ptr, const value_type&),
_M_insert(_Const_Base_ptr, _Const_Base_ptr, const value_type&),
_M_insert_unique(iterator, const value_type&),
_M_insert_unique(const_iterator, const value_type&),
_M_insert_equal(iterator, const value_type&),
_M_insert_equal(const_iterator, const value_type&)):
Remove.
(_Rb_tree<>::_M_insert_(_Const_Base_ptr, _Const_Base_ptr,
const value_type&), _M_insert_unique_(const_iterator,
const value_type&), _M_insert_equal_(const_iterator,
const value_type&)): Add, adjust all callers.
* include/bits/stl_map.h (map<>::insert(iterator, const value_type&)):
Adjust.
* include/bits/stl_set.h (set<>::insert(iterator, const value_type&)):
Likewise.
* include/bits/stl_multimap.h (multimap<>::insert(iterator,
const value_type&)): Likewise.
* include/bits/stl_multiset.h (multiset<>::insert(iterator,
const value_type&)): Likewise.
2006-11-22 Antony King <anthony.king@st.com>
J"orn Rennecke <joern.rennecke@st.com>
PR libstdc++/29920
* include/Makefile.am (stamp-host): Remove CCODECVT_H line.
* include/Makefile.in: Regenerate.
2006-11-21 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/hashtable.h: -Wshadow fixes.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/
constructors_destructor_fn_imps.hpp: Same.
* src/mt_allocator.cc: Same.
* src/debug.cc: Same.
* config/locale/gnu/codecvt_members.cc: Same.
2006-11-21 Benjamin Kosnik <bkoz@redhat.com>
Howard Hinnant <hhinnant@apple.com>
* src/iostream-inst.cc: Remove iostream include.
2006-11-19 Paolo Carlini <pcarlini@suse.de>
* include/tr1/functional (hash(long long), hash(unsigned long long)):
Add specializations.
2006-11-18 Joseph Myers <joseph@codesourcery.com>
* config/cpu/powerpc/atomic_word.h (_GLIBCXX_WRITE_MEM_BARRIER):
Use plain sync if __NO_LWSYNC__.
2006-11-14 Joseph Myers <joseph@codesourcery.com>
* testsuite/26_numerics/complex/13450.cc: Do not test long double
in IBM long double case.
2006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
* configure: Regenerated.
2006-11-13 Joseph Myers <joseph@codesourcery.com>
* libsupc++/eh_globals.cc (__cxxabiv1::__cxa_get_globals):
Initialize propagatingExceptions if __ARM_EABI_UNWINDER__.
* libsupc++/eh_personality.cc (empty_exception_spec): Define
separately in __ARM_EABI_UNWINDER__ case.
2006-11-13 Joseph Myers <joseph@codesourcery.com>
* libsupc++/typeinfo (__GXX_TYPEINFO_EQUALITY_INLINE): Define.
Use instead of __GXX_MERGED_TYPEINFO_NAMES to condition inline
definitions.
* libsupc++/tinfo.cc (operator==): Condition on
__GXX_TYPEINFO_EQUALITY_INLINE; check __GXX_MERGED_TYPEINFO_NAMES
to determine algorithm.
* libsupc++/tinfo2.cc (type_info::before): Likewise.
2006-11-12 Paolo Carlini <pcarlini@suse.de>
* include/ext/bitmap_allocator.h: Uglify some names.
* include/ext/concurrence.h: Likewise.
* src/bitmap_allocator.cc: Likewise.
2006-11-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29496
* include/debug/safe_base.h (_Safe_sequence_base::_M_get_mutex,
_Safe_iterator_base::_M_get_mutex, _M_attach_single, _M_detach_single):
New.
* src/debug.cc: Define the latter.
(_Safe_sequence_base::_M_detach_all, _M_detach_singular,
_M_revalidate_singular, _M_swap): Use the mutex.
(_Safe_iterator_base::_M_attach, _M_detach): Adjust, forward to the
*_single version.
* include/debug/safe_iterator.h (_Safe_iterator<>::_M_attach_single,
_M_invalidate_single): New.
* include/debug/safe_iterator.tcc: Define.
(_Safe_iterator<>::_M_invalidate): Adjust, forward to
_M_invalidate_single.
* include/debug/safe_sequence.h (_Safe_sequence<>::_M_invalidate_if,
_M_transfer_iter): Use the mutex, adjust, forward to the *_single
versions of _M_invalidate and _M_attach.
* config/abi/pre/gnu.ver (_Safe_sequence_base::_M_get_mutex,
_Safe_iterator_base::_M_get_mutex, _M_attach_single, _M_detach_single):
Add @GLIBCXX_3.4.10; adjust.
* configure.ac (libtool_VERSION): To 6:10:0.
* testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.10.
* configure: Regenerate.
2006-11-10 Jakub Jelinek <jakub@redhat.com>
* config/locale/gnu/c_locale.cc (__convert_to_v): Prefer
strtold_l over __strtold_l if available.
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29722
* include/ext/concurrence.h (concurrence_lock_error): New.
(concurrence_unlock_error): New.
(__throw_concurrence_lock_error): New.
(__throw_concurrence_unlock_error): New.
(__mutex): Use functions.
(__recursive_mutex): Same.
* testsuite/abi/cxx_runtime_only_linkage.cc: New.
* include/ext/pb_ds/exception.hpp: Keep exception classes defined
even when -fno-exceptions is passed, consistent with other usage.
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/exception.hpp (pb_ds): Modify for -fno-exceptions.
(__throw_container_error): New. Conditionalize based on __EXCEPTIONS.
(__throw_insert_error): New.
(__throw_join_error): New.
(__throw_resize_error): New.
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Use them.
* include/ext/pb_ds/detail/resize_policy/
hash_exponential_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
* include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/exception.hpp: Same.
* src/functexcept.cc: Qualify abort with std.
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/exception.hpp: Add translation support to
exception strings.
* include/ext/concurrence.h: Same.
* include/tr1/array: Same.
2006-11-05 Paolo Carlini <pcarlini@suse.de>
* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 45.
* docs/html/ext/lwg-closed.html: Add.
* docs/html/ext/howto.html: Adjust.
2006-10-30 Paolo Carlini <pcarlini@suse.de>
* include/tr1/utility (tuple_size<std::pair<> >::value): Provide
definition.
2006-10-30 Paolo Carlini <pcarlini@suse.de>
* include/tr1/tuple_iterate.h (tuple_size<tuple<> >::value): Provide
definition.
* include/tr1/functional (is_bind_expression<>::value,
is_placeholder<>::value, + various partial specializations): Likewise.
* include/tr1/array (tuple_size<array<> >::value): Likewise.
2006-10-30 Paolo Carlini <pcarlini@suse.de>
* testsuite/tr1/6_containers/array/capacity/max_size.cc: Actually
do test max_size().
2006-10-30 Joseph Myers <joseph@codesourcery.com>
* testsuite/config/default.exp (${tool}_target_compile): Use
v3_target_compile.
2006-10-29 Paolo Carlini <pcarlini@suse.de>
* src/debug.cc (_Safe_sequence_base::_M_revalidate_singular): Fix
pasto, advance __iter only once per iteration.
2006-10-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29520
* include/tr1/random (geometric_distribution<>::
operator()(_UniformRandomNumberGenerator&)): Only declare.
* include/tr1/random.tcc (geometric_distribution<>::
operator()(_UniformRandomNumberGenerator&),
poisson_distribution<>::operator()(_UniformRandomNumberGenerator&),
binomial_distribution<>::operator()(_UniformRandomNumberGenerator&)):
Reject candidate floating point values not convertible to the
result_type.
2006-10-28 Paolo Carlini <pcarlini@suse.de>
* include/tr1/array (array<>::_M_at): New.
(array<>::at): Fix off-by-one bug, use the above.
* testsuite/tr1/6_containers/array/element_access/
at_out_of_range.cc: Adjust.
* include/tr1/array (class array<>): Remove non-conforming default
for the second parameter.
* include/ext/array_allocator.h: Adjust.
* include/tr1/array (array<>::front, array<>::back): Do not return
a reference to memory not belonging to the array when _Nm == 0.
2006-10-17 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_get<>::__do_get(iter_type,
iter_type, bool, ios_base&, ios_base::iostate&, double&),
money_get<>::do_get(iter_type, iter_type, bool, ios_base&,
ios_base::iostate&, long double&), money_get<>::do_get(iter_type,
iter_type, bool, ios_base&, ios_base::iostate&, string_type&)): Tidy.
2006-10-17 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26020
* include/bits/stl_iterator_base_funcs.h (advance): Convert
distance parameter to iterator_traits<>::difference_type.
* testsuite/24_iterators/26020.cc: New.
2006-10-17 Benjamin Kosnik <bkoz@redhat.com>
* include/tr1/random.tcc: Fixup long line.
2006-10-17 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28514
* include/bits/cpp_type_traits.h (__detail): Uglify namespace.
* include/ext/rope: Remove global-scope anonymous namespace, use
nested __detail. Fixup resulting formatting issues.
* include/ext/ropeimpl.h: Same.
* include/tr1/hashtable_policy.h: Remove anonymous namespace
nesting for __detail.
* include/tr1/random: Revert anonymous namespace to nested
__detail namespace.
* include/tr1/random.tcc: Same.
* src/ext-inst.cc: Fixups for above.
2006-10-16 Douglas Gregor <doug.gregor@gmail.com>
* include/Makefile.am (tr1_headers): Add new tuple_defs.h.
* include/Makefile.in (tr1_headers): Regenerate.
* include/tr1/tuple (tuple): Move declaration to tuple_defs.h.
(get): Ditto.
(operator==): Ditto.
(operator<): Ditto.
(operator!=): Ditto.
(operator>): Ditto.
(operator<=): Ditto.
(operator>=): Ditto.
(__stripped_tuple_type): Ditto.
Include tuple.defs.h
* include/tr1/tuple_iterate.h (tuple): Use
_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED macro instead of 10
"typename"s.
(tuple_element): Use _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS and
_GLIBCXX_TYPLE_ALL_TEMPLATE_ARGS instead of 10
parameters/arguments.
* include/tr1/tuple_defs.h: New header, contains declarations and
definitions for the tuple template with all arguments.
* include/tr1/repeat.h (_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS): New.
(_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED): New.
(_GLIBCXX_TUPLE_ALL_TEMPLATE_ARGS): New.
(_GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS): New.
(_GLIBCXX_TEMPLATE_ARGS_STRIPPED): New.
* scripts/gen_includers.pl: Update.
* scripts/gen_includers2.pl: New.
2006-10-16 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29095 continued
* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Additions
so that testing not in the build directory works for the "C"
target language.
2006-10-16 Jakub Jelinek <jakub@redhat.com>
* include/bits/basic_string.tcc (_Rep::_S_create): Call
_M_set_sharable() for backwards compatibility.
2006-10-15 Paolo Carlini <pcarlini@suse.de>
* include/bits/istream.tcc (getline(basic_istream<>&,
basic_string<>&)): Move...
* include/bits/basic_string.h: ... here.
(operator<<(basic_ostream<>&, const basic_string<>&)): Mark inline.
2006-10-15 Geoffrey Keating <geoffk@apple.com>
* scripts/make_exports.pl: Use -_ rather than --strip-underscores
or --strip-underscore.
2006-10-14 Geoffrey Keating <geoffk@apple.com>
* aclocal.m4: Regenerate.
* configure: Regenerate with released autoconf-2.59.
2006-10-14 Paolo Carlini <pcarlini@suse.de>
* docs/html/faq/index.html: Update.
* docs/html/faq/index.txt: Regenerate.
2006-10-14 Paolo Carlini <pcarlini@suse.de>
* include/bits/ostream.tcc (operator<<(basic_ostream<>&,
const char*)): Further fix for throwing widen.
2006-10-14 Paolo Carlini <pcarlini@suse.de>
* include/bits/ostream.tcc (operator<<(basic_ostream<>&,
const char*)): Fix thinko in change for libstdc++/28277,
avoid memory leaks.
2006-10-13 Paolo Carlini <pcarlini@suse.de>
* include/bits/istream.tcc (operator>>(__istream_type&
(*)(__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
operator>>(ios_base& (*)(ios_base&))): Move...
* include/std/std_istream.h: ... here.
(operator>>(basic_istream<char,>&, unsigned char&),
operator>>(basic_istream<char,>&, signed char&),
operator>>(basic_istream<char,>&, unsigned char*),
operator>>(basic_istream<char,>&, signed char*)): Mark inline.
* include/bits/ostream.tcc (operator<<(__ostream_type&
(*)(__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
operator<<(ios_base& (*)(ios_base&))): Move...
* include/std/std_ostream.h: ... here.
(operator<<(basic_ostream<>&, _CharT),
operator<<(basic_ostream<>&, char),
operator<<(basic_ostream<char,>&, char),
operator<<(basic_ostream<char,>&, signed char),
operator<<(basic_ostream<char,>&, unsigned char),
operator<<(basic_ostream<>&, const _CharT*),
operator<<(basic_ostream<char,>&, const char*),
operator<<(basic_ostream<char,>&, const signed char*),
operator<<(basic_ostream<char,>&, const unsigned char*),
endl(basic_ostream<>&), ends(basic_ostream<>&),
flush(basic_ostream<>&)): Mark inline.
2006-10-13 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: ostream bits 2)
* include/std/std_ostream.h (basic_ostream<>::_M_insert(const
char_type*, streamsize)): New.
(basic_ostream<>::_M_write(char_type, streamsize)): Likewise.
(operator<<(basic_ostream<>&, _CharT), operator<<(basic_ostream<>&,
char), operator<<(basic_ostream<>&, const _CharT*),
operator<<(basic_ostream<>&, const char*)): Use the latter.
* include/bits/ostream.tcc (basic_ostream<>::_M_insert(const
char_type*, streamsize)): Define.
(operator<<(basic_ostream<>&, const char*)): Use the latter.
(operator<<(basic_ostream<>&, _CharT), operator<<(basic_ostream<>&,
char), operator<<(basic_ostream<>&, const _CharT*),
operator<<(basic_ostream<>&, const char*),
operator<<(basic_ostream<>&, const basic_string<>&)): Remove.
* include/bits/basic_string.h (operator<<(basic_ostream<>&,
const basic_string<>&)): Use the latter, implement DR 586.
* config/abi/pre/gnu.ver: Adjust, export the new _M_insert.
* docs/html/ext/howto.html: Add an entry for DR 586.
* testsuite/21_strings/basic_string/inserters_extractors/char/
28277.cc: New.
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
28277.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/char/
28277-3.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/char/
28277-4.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
28277-2.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
28277-3.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
28277-4.cc: Likewise.
2006-10-11 Paolo Carlini <pcarlini@suse.de>
* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 44.
2006-10-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29426
* libsupc++/guard.cc (get_static_mutex): New.
(mutex_wrapper::mutex_wrapper): Use it to get properly initialized
recursive mutex without ordering issues.
* src/locale_init.cc (__get_locale_mutex): No need to
uglify. Change to get_locale_mutex.
2006-10-11 Paolo Carlini <pcarlini@suse.de>
* testsuite/22_locale/num_put/put/char/11.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
2006-10-10 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/lib/libstdc++.exp (v3-build_support): Link
libtestc++.a, not a bunch of object files.
2006-10-09 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29118
* src/locale_init.cc (__get_locale_mutex): New.
(locale::locale): Use it.
(locale::global): Use it.
2006-10-09 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29095
* libsupc++/cxxabi.h (__cxa_cdtor_type): Explicit "C" linkage.
* config/cpu/arm/cxxabi_tweaks.h: Same.
* config/cpu/generic/cxxabi_tweaks.h: Same.
* testsuite/abi: Add.
* testsuite/abi/header_cxxabi.cc: New.
* testsuite/demangle: Move...
* testsuite/abi/demangle: ...here.
* testsuite/libstdc++-dg/conformance.exp: Adjust testsuite file
calculation.
* scripts/create_testsuite_files: Same.
* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): New.
(libstdc++-dg-test): Use it.
2006-10-09 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: __add_grouping)
* include/bits/locale_facets.tcc (__add_grouping<>(_CharT*, _CharT,
const char*, size_t, const _CharT*, const _CharT*)): Rewrite in
non-recursive form.
2006-10-09 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: money_put bits)
* include/bits/locale_facets.tcc (money_put<>::_M_insert(iter_type,
ios_base&, char_type, const string_type&)): Avoid __builtin_alloca
with no limit, do the work in place.
* include/bits/locale_facets.tcc (money_put<>::do_put(iter_type,
bool, ios_base&, char_type, long double)): Avoid unnecessary
__builtin_alloca, do the work in place.
2006-10-09 Benjamin Kosnik <bkoz@redhat.com>
* src/globals_io.cc (_GLIBCXX_once): Remove, unused.
(_GLIBCXX_mutex): Same.
(_GLIBCXX_mutex_addres): Same.
(_GLIBCXX_mutex_init): Same.
(_GLIBCXX_mutex_address_init): Same.
2006-10-07 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: money_get bits)
* include/bits/locale_facets.tcc (money_get<>::do_get(iter_type,
iter_type, bool, ios_base&, ios_base::iostate&, string_type&)):
Avoid __builtin_alloca with no limit, do the work in place.
2006-10-07 Ion Gaztanaga <igaztanaga@gmail.com>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_tree.h (_Rb_tree<>::erase(const _Key&)): Don't
call std::distance unnecessarily.
2006-10-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29368
* include/bits/basic_string.h: Adjust rfind documentation.
* include/ext/vstring.h: Likewise.
2006-10-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29354
* include/bits/sstream.tcc (basic_stringbuf<>::seekpos(pos_type,
ios_base::openmode)): Allow for seek to pos_type(off_type(0))
when the stream is empty.
* testsuite/27_io/basic_stringbuf/seekpos/char/29354.cc: New.
* testsuite/27_io/basic_stringbuf/seekpos/wchar_t/29354.cc: New.
2006-10-04 Benjamin Kosnik <bkoz@redhat.com>
Mike Stump <mrs@apple.com>
* testsuite/27_io/ios_base/storage/2.cc: Fail on Darwin 8.[0-4].* only.
* testsuite/23_containers/vector/resize/1.cc: Same.
2006-10-04 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/performance/priority_queue/mem_usage/
pop_test.hpp: Correct typo.
* testsuite/util/performance/assoc/mem_usage/
multimap_insert_test.hpp: Same.
* testsuite/util/performance/assoc/mem_usage/erase_test.hpp: Same.
2006-10-03 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/testsuite_allocator.h (allocation_tracker): To
tracker_allocator_counter.
(allocation_tracker::allocationTotal): To get_allocation_count.
(allocation_tracker::deallocationTotal): To get_deallocation_count.
(allocation_tracker::constructCount): To get_construct_count.
(allocation_tracker::destructCount): To get_destruct_count.
(allocation_tracker::resetCounts): To reset.
(tracker_alloc): To tracker_allocator.
* testsuite/util/performance/mem: Remove.
* testsuite/util/performance/mem/mem_track_allocator_base.hpp: Remove.
* testsuite/util/performance/mem/mem_track_allocator.hpp: Remove.
* testsuite/27_io/basic_stringbuf/4.cc: Adjust for new names
or includes.
* testsuite/ext/hash_set/check_construct_destroy.cc: Same.
* testsuite/ext/slist/check_construct_destroy.cc: Same.
* testsuite/performance/ext/pb_ds/
hash_random_int_erase_mem_usage.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
* testsuite/performance/ext/pb_ds/
priority_queue_text_pop_mem_usage.cc: Same.
* testsuite/23_containers/vector/capacity/2.cc: Same.
* testsuite/23_containers/vector/cons/4.cc: Same.
* testsuite/23_containers/vector/check_construct_destroy.cc: Same.
* testsuite/23_containers/deque/cons/2.cc: Same.
* testsuite/23_containers/deque/check_construct_destroy.cc: Same.
* testsuite/23_containers/list/check_construct_destroy.cc: Same.
* testsuite/23_containers/set/check_construct_destroy.cc: Same.
* testsuite/util/testsuite_allocator.h
* testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp
* testsuite/util/performance/assoc/mem_usage/multimap_insert_test.hpp
* testsuite/util/performance/assoc/mem_usage/erase_test.hpp
* testsuite/util/testsuite_allocator.cc: Same.
2006-10-03 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/native_type/priority_queue/native_pq_tag.hpp: Remove.
* testsuite/util/statistic/sample_var.hpp: Rename to...
* testsuite/util/statistic/sample_variance.hpp: ... this.
* testsuite/util/statistic/res_recorder.hpp: Rename to...
* testsuite/util/statistic/result_recorder.hpp: ... this.
* testsuite/util/statistic/sample_mean.hpp: Format.
* testsuite/util/statistic/sample_mean_confidence_checker.hpp: Same.
* testsuite/util/regression/trait/priority_queue/trait.hpp: Same.
* testsuite/util/regression/trait/erase_if_fn.hpp: Same.
* testsuite/util/regression/trait/assoc/trait.hpp: Same.
* testsuite/util/native_type/priority_queue/
native_priority_queue.hpp: Same.
* testsuite/util/native_type/assoc/native_tree_tag.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_tag.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_map.hpp: Same.
* testsuite/util/performance/priority_queue/timing/join_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/
modify_test.hpp: Same.
* testsuite/util/performance/assoc/timing/
subscript_insert_test.hpp: Same.
* testsuite/util/performance/time/timing_test_base.hpp: Same.
2006-10-02 Paolo Carlini <pcarlini@suse.de>
* include/ext/rc_string_base.h (_M_compare<wchar_t>):
Protect with _GLIBCXX_USE_WCHAR_T.
* include/ext/sso_string_base.h (_M_compare<wchar_t>):
Likewise.
(__sso_string_base<>::_M_destroy): Inline.
2006-10-02 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/basic_types.hpp (comp_hash_): Remove,
format.
* include/ext/pb_ds/detail/types_traits.hpp
(types_traits::comp_hash): Use pair typedef.
* include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
2006-10-01 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (xor_combine<>::_M_initialize_max_aux): New.
(xor_combine<>::operator()()): Tweak per N2079.
* include/tr1/random.tcc (xor_combine<>::_M_initialize_max_aux):
Define.
(xor_combine<>::_M_initialize_max): Use it.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/
cons/default.cc: Adjust.
* docs/html/ext/tr1.html: Adjust.
2006-10-01 Paolo Carlini <pcarlini@suse.de>
* include/ext/type_traits.h: Avoid _T, badname for some targets;
also avoid plain T.
2006-10-01 Paolo Carlini <pcarlini@suse.de>
* config/io/basic_file_stdio.cc: As an extension, and
consistently with C facilities, allow for in|out|app and
in|out|app|binary openmodes.
* testsuite/27_io/basic_filebuf/open/char/4.cc: New.
2006-09-30 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/types_traits.hpp (store_extra_false_type):
To false_type.
(store_extra_true_type): To true_type.
(no_throw_copies_true_type): To true_type.
(no_throw_copies_false_type): To false_type.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
entry_list_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
find_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
2006-09-29 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Formating fixes.
* include/ext/pb_ds/detail/basic_tree_policy/
null_node_metadata.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Same.
* include/ext/pb_ds/detail/basic_types.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy/
mtf_lu_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_metadata.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy/
sample_update_policy.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_policy_imp.hpp: Same.
* include/ext/pb_ds/list_update_policy.hpp: Same.
2006-09-29 Benjamin Kosnik <bkoz@redhat.com>
Howard Hinnant <hhinnant@apple.com>
Paolo Carlini <pcarlini@suse.de>
* include/ext/type_traits.h (__remove_unsigned): Fix up for signed
char, bool, wchar_t, and floating point types.
(__add_unsigned): Same.
* testsuite/ext/type_traits: New.
* testsuite/ext/type_traits.cc: Move...
* testsuite/ext/type_traits/numeric_traits.cc: ...here.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: New.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: New.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: New.
* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: New.
* testsuite/ext/type_traits/add_unsigned.cc: New.
* testsuite/ext/type_traits/remove_unsigned.cc: New.
2006-09-29 Joseph S. Myers <joseph@codesourcery.com>
* acinclude.m4 (enable_symvers): Default to no if unable to link.
* configure: Regenerate.
2006-09-28 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_uninitialized.h
(__uninitialized_fill_n_a(_ForwardIterator, _Size, const _Tp&,
allocator<>)): Inline.
2006-09-28 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_store_hash_fn_imps.hpp: Formatting fixes.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
entry_list_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
find_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
cond_key_dtor_entry_dealtor.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/head.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/cond_dtor_entry_dealtor.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
iterator_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
find_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
find_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/
policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
entry_metadata_base.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
2006-09-28 Paolo Carlini <pcarlini@suse.de>
* include/tr1/boost_shared_ptr.h: Use __atomic_add_dispatch and
__exchange_and_add_dispatch everywhere.
2006-09-27 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/typelist.h (type_to_type): Remove.
* include/ext/throw_allocator.h (assert_allocatod): Remove.
(check_allocated(label)): New.
(print_to_string): Print numerical output correctly.
* testsuite/ext/pb_ds/example/hash_resize_neg.cc: Adjust line numbers.
* testsuite/util/regression/rand/priority_queue/detail/
operator_fn_imps.hpp: Set and clear label, throw
probability. Check only allocations of the marked label.
* testsuite/util/regression/rand/assoc/detail/
operator_fn_imps.hpp: Same.
* testsuite/performance/ext/pb_ds/text_find_timing.cc: Adjustments for
removal of type_to_type.
* testsuite/performance/ext/pb_ds/
hash_random_int_erase_mem_usage.cc: Same.
* testsuite/performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_text_push_timing.cc: Same.
* testsuite/performance/ext/pb_ds/
random_int_subscript_find_timing.cc: Same.
* testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
* testsuite/performance/ext/pb_ds/random_int_find_timing.cc: Same.
* testsuite/performance/ext/pb_ds/
multimap_text_insert_mem_usage.hpp: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_random_int_push_timing.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_find_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_text_modify_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/
tree_order_statistics_timing.cc: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_text_push_pop_timing.cc: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_text_join_timing.cc: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_random_int_push_pop_timing.cc: Same.
* testsuite/performance/ext/pb_ds/
random_int_subscript_insert_timing.cc: Same.
* testsuite/performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
* testsuite/performance/ext/pb_ds/
multimap_text_insert_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_text_pop_mem_usage.cc: Same.
* testsuite/performance/ext/pb_ds/
hash_zlob_random_int_find_timing.cc: Same.
* testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
* testsuite/util/regression/rand/priority_queue/
rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/
constructor_destructor_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/insert_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/assoc/
container_rand_regression_test.hpp: Same.
* testsuite/util/regression/assoc/common_type.hpp: Same.
* testsuite/util/regression/basic_type.hpp: Same.
* testsuite/util/common_type/assoc/common_type.hpp: Same.
* testsuite/util/common_type/assoc/string_form.hpp: Same.
* testsuite/util/common_type/assoc/template_policy.hpp: Same.
* testsuite/util/common_type/assoc/native_set.hpp: Same.
* testsuite/util/performance/priority_queue/mem_usage/
pop_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/
push_pop_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/join_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/push_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/
modify_test.hpp: Same.
* testsuite/util/performance/assoc/mem_usage/
multimap_insert_test.hpp: Same.
* testsuite/util/performance/assoc/mem_usage/erase_test.hpp: Same.
* testsuite/util/performance/assoc/timing/
multimap_insert_test.hpp: Same.
* testsuite/util/performance/assoc/timing/
subscript_find_test.hpp: Same.
* testsuite/util/performance/assoc/timing/find_test.hpp: Same.
* testsuite/util/performance/assoc/timing/
subscript_insert_test.hpp: Same.
* testsuite/util/performance/assoc/timing/insert_test.hpp: Same.
* testsuite/util/performance/assoc/timing/
tree_order_statistics_test.hpp: Same.
* testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
* testsuite/util/performance/assoc/timing/
tree_split_join_test.hpp: Same.
* testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
* testsuite/util/testsuite_common_types.h: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Typedef
normalization, consistency in member names between cc and gp hash
tables, formatting fixes.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/assoc_container.hpp: Formatting fixes.
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/types_traits.hpp: Same.
* include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/
direct_mod_range_hashing_imp.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/
direct_mask_range_hashing_imp.hpp: Same.
2006-09-27 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29217
* src/localename.cc (locale::_Impl::_M_replace_categories)):
Compensate for the inconsistent numerical encodings of the
collate and time categories vs the corresponding names.
* testsuite/22_locale/locale/cons/29217.cc: New.
* testsuite/22_locale/locale/cons/2.cc: Enable and split
out the few ENC_TRAITS bits to...
* testsuite/22_locale/locale/cons/unicode/1.cc... here.
2006-09-25 Howard Hinnant <hhinnant@apple.com>
PR libstdc++/29224
* include/tr1/functional_iterate.h: Avoid -Wshadow warnings.
2006-09-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29179
* include/ext/mt_allocator.h (__pool_base): Adjust/extend
documentation in comments.
2006-09-24 Paolo Carlini <pcarlini@suse.de>
* include/tr1/boost_shared_ptr.h (shared_ptr<>::shared_ptr(const
__shared_ptr<>&), shared_ptr(const __weak_ptr<>&),
shared_ptr(const __shared_ptr<>&, __static_cast_tag),
shared_ptr(const __shared_ptr<>&, __const_cast_tag),
shared_ptr(const __shared_ptr<>&, __dynamic_cast_tag),
weak_ptr<>::weak_ptr(const __shared_ptr<>&), weak_ptr(const
__weak_ptr<>&)): Remove.
(shared_ptr<>::shared_ptr(const shared_ptr<>&),
shared_ptr(const weak_ptr<>&), shared_ptr(const shared_ptr<>&,
__static_cast_tag), shared_ptr(const shared_ptr<>&,
__const_cast_tag), shared_ptr(const shared_ptr<>&,
__dynamic_cast_tag), static_pointer_cast(const shared_ptr<>&),
const_pointer_cast(const shared_ptr<>&), dynamic_pointer_cast(const
shared_ptr<>&), weak_ptr<>::weak_ptr(const shared_ptr<>&),
weak_ptr(const weak_ptr<>&), weak_ptr<>::lock(),
__enable_shared_from_this_helper(const __shared_count<>&, const
enable_shared_from_this<>*, const _Tp2*)): Add.
(class enable_shared_from_this): Add.
* testsuite/tr1/2_general_utilities/memory/enable_shared_from_this/
1.cc: New.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/casts/1.cc:
Likewise.
* testsuite/tr1/2_general_utilities/memory/weak_ptr/lock/1.cc:
Likewise.
* include/tr1/boost_shared_ptr.h: Further formatting and
uglification fixes.
2006-09-22 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29134 (vector<bool> bits)
* include/bits/stl_bvector.h (vector<bool>::max_size):
Use allocator' max_size.
* testsuite/23_containers/vector/bool/capacity/29134.cc: New.
* testsuite/23_containers/deque/capacity/29134-2.cc: Minor tweak.
* testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
2006-09-22 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (add_reference): Robustify vs
reference to void.
* testsuite/tr1/4_metaprogramming/reference_modifications/
add_reference.cc: Add test.
* include/tr1/memory: include <tr1/type_traits>.
* include/tr1/boost_shared_ptr.h (__shared_ptr<>::operator*):
Use add_reference instead.
* testsuite/tr1/2_general_utilities/memory/enable_shared_from_this/
explicit_instantiation/1.cc: New.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/
explicit_instantiation/1.cc: Likewise.
* testsuite/tr1/2_general_utilities/memory/weak_ptr/
explicit_instantiation/1.cc: Likewise.
* testsuite/util/testsuite_tr1.h: Tweak; avoid empty enum.
* include/tr1/type_traits_fwd.h: Spelling fix.
* include/tr1/boost_shared_ptr.h: Obvious stylistic fixes.
2006-09-22 Paolo Carlini <pcarlini@suse.de>
* include/tr1/boost_shared_ptr.h: Trivial formatting fixes.
2006-09-21 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/type_traits.h (__numeric_traits_integer): New.
(__numeric_traits_floating): New.
(__numeric_traits): Use them.
* testsuite/ext/type_traits.cc: New.
2006-09-21 Paolo Carlini <pcarlini@suse.de>
* include/ext/hash_map: Remove forward declaration of equality
operator, not needed for friendship of all its instances.
* include/ext/hash_set: Likewise.
* include/bits/stl_set.h: Likewise for equality operator and
operator less.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_queue.h: Likewise.
* include/bits/stl_stack.h: Likewise.
* include/bits/streambuf_iterator.h: Likewise for copy.
* include/std/std_streambuf.h: Likewise for __copy_aux and find.
* include/tr1/boost_shared_ptr.h: Likewise for get_deleter.
* include/tr1/random: Likewise, remove all forward declarations
of inserters and extractors.
2006-09-21 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (__sso_string_base<>::_M_max_size(),
_M_destroy, _M_create): Use _M_get_allocator.
2006-09-21 Ben Elliston <bje@au.ibm.com>
* crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove invocations of
GLIBCXX_CHECK_COMPILER_FEATURES.
* configure.ac: Always invoke GLIBCXX_CHECK_COMPILER_FEATURES.
Remove invocations elsewhere.
* configure: Regenerate.
2006-09-21 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29134 (ext/vstring bits)
* include/ext/sso_string_base.h (__sso_string_base<>::_S_max_size):
Remove.
(__sso_string_base<>::_M_max_size): Use allocator' max_size.
(__sso_string_base<>::_M_create): Adjust.
* include/ext/vstring.h: Minor comment tweak.
* testsuite/ext/vstring/capacity/29134.cc: New.
2006-09-20 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29134
* include/bits/stl_list.h (list<>::max_size): Forward to allocator'
max_size.
* include/bits/stl_vector.h (vector<>::max_size): Likewise.
* include/bits/stl_deque.h (deque<>::max_size): Likewise.
* include/bits/stl_tree.h (_Rb_tree<>::max_size): Likewise.
* include/tr1/hashtable (_Hashtable<>::max_size): Likewise.
* testsuite/23_containers/vector/capacity/29134.cc: Add.
* testsuite/23_containers/deque/capacity/29134.cc: Likewise.
* testsuite/23_containers/list/capacity/29134.cc: Likewise.
* testsuite/23_containers/set/capacity/29134.cc: Likewise.
* testsuite/23_containers/map/capacity/29134.cc: Likewise.
* testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
* testsuite/23_containers/multimap/capacity/29134.cc: Likewise.
* testsuite/tr1/6_containers/unordered/capacity/29134-set.cc: Likewise.
* testsuite/tr1/6_containers/unordered/capacity/29134-map.cc: Likewise.
* testsuite/tr1/6_containers/unordered/capacity/29134-multiset.cc:
Likewise.
* testsuite/tr1/6_containers/unordered/capacity/29134-multimap.cc:
Likewise.
* include/bits/deque.tcc (deque<>::_M_new_elements_at_front,
deque<>::_M_new_elements_at_back): Check for length errors.
* testsuite/23_containers/deque/capacity/29134-2.cc: New.
* testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
* include/tr1/hashtable (_Hashtable<>::_M_get_Value_allocator): Add.
(_Hashtable<>::_M_allocate_node, _M_deallocate_node): Use it.
* testsuite/tr1/6_containers/unordered/instantiate/set.cc: Add test.
* testsuite/tr1/6_containers/unordered/instantiate/map.cc: Likewise.
* testsuite/tr1/6_containers/unordered/instantiate/multiset.cc:
Likewise.
* testsuite/tr1/6_containers/unordered/instantiate/multimap.cc:
Likewise.
2006-09-20 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/
typelist_assoc_container.hpp: Remove, unused.
* include/ext/pb_ds/detail/typelist/
typelist_assoc_container_find.hpp: Same.
* include/ext/pb_ds/detail/typelist: Remove.
* include/ext/pb_ds/detail/typelist.hpp: Merge...
* include/ext/pb_ds/detail/typelist/typelist_flatten.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_contains.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_typelist_append.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_apply.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_filter.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_append.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_at_index.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_transform.hpp: Same.
* include/ext/typelist.h: ... into this.
* include/Makefile.am: Subtractions.
* include/Makefile.in: Regenerate.
* include/ext/pb_ds/assoc_container.hpp: Fixups for new includes,
namespaces, and names.
* include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
cc_hash_max_collision_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
sample_resize_policy.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
sample_resize_trigger.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_exponential_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_size_base.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/container_base_dispatch.hpp: Same.
* testsuite/performance/ext/pb_ds/text_find_timing.cc
* testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc
* testsuite/performance/ext/pb_ds/tree_text_insert_timing.cc
* testsuite/performance/ext/pb_ds/priority_queue_text_push_timing.cc
* testsuite/performance/ext/pb_ds/random_int_subscript_find_timing.cc
* testsuite/performance/ext/pb_ds/tree_split_join_timing.cc
* testsuite/performance/ext/pb_ds/random_int_find_timing.cc
* testsuite/performance/ext/pb_ds/
multimap_text_insert_mem_usage.hpp: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_random_int_push_timing.cc
* testsuite/performance/ext/pb_ds/multimap_text_find_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/
priority_queue_text_modify_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc
* testsuite/performance/ext/pb_ds/
priority_queue_text_push_pop_timing.cc
* testsuite/performance/ext/pb_ds/priority_queue_text_join_timing.cc
* testsuite/performance/ext/pb_ds/
priority_queue_random_int_push_pop_timing.cc
* testsuite/performance/ext/pb_ds/random_int_subscript_insert_timing.cc
* testsuite/performance/ext/pb_ds/tree_text_lor_find_timing.cc
* testsuite/performance/ext/pb_ds/
multimap_text_insert_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc
* testsuite/performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc
* testsuite/performance/23_containers/find/map.cc
* testsuite/performance/23_containers/create/map.cc
* testsuite/performance/23_containers/insert_erase/associative.cc
* testsuite/performance/23_containers/insert/sequence.cc
* testsuite/performance/23_containers/insert/associative.cc
* testsuite/performance/23_containers/create_from_sorted/set.cc
* testsuite/performance/23_containers/index/map.cc
* testsuite/performance/23_containers/insert_from_sorted/set.cc
* testsuite/performance/23_containers/create_sort/list.cc
* testsuite/performance/23_containers/sort_search/list.cc
* testsuite/performance/23_containers/producer_consumer/sequence.cc
* testsuite/performance/23_containers/producer_consumer/associative.cc
* testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
* testsuite/util/regression/rand/priority_queue/
rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
* testsuite/util/regression/assoc/common_type.hpp: Same.
* testsuite/util/native_type/assoc/native_multimap.hpp: Same.
* testsuite/util/native_type/assoc/native_tree_tag.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_multimap.hpp: Same.
* testsuite/util/native_type/assoc/native_set.hpp: Same.
* testsuite/util/native_type/assoc/native_map.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_set.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_map.hpp: Same.
* testsuite/util/common_type/priority_queue/common_type.hpp: Same.
* testsuite/util/common_type/assoc/common_type.hpp: Same.
* testsuite/util/common_type/assoc/string_form.hpp: Same.
* testsuite/util/common_type/assoc/template_policy.hpp: Same.
* testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp:
Same.
* testsuite/util/performance/priority_queue/timing/push_pop_test.hpp:
Same.
* testsuite/util/performance/priority_queue/timing/join_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/push_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/modify_test.hpp:
Same.
* testsuite/util/performance/assoc/mem_usage/multimap_insert_test.hpp:
Same.
* testsuite/util/performance/assoc/mem_usage/erase_test.hpp: Same.
* testsuite/util/performance/assoc/timing/common_type.hpp: Same.
* testsuite/util/performance/assoc/timing/multimap_insert_test.hpp:
Same.
* testsuite/util/performance/assoc/timing/subscript_find_test.hpp:
Same.
* testsuite/util/performance/assoc/timing/find_test.hpp: Same.
* testsuite/util/performance/assoc/timing/subscript_insert_test.hpp:
Same.
* testsuite/util/performance/assoc/timing/insert_test.hpp: Same.
* testsuite/util/performance/assoc/timing/
tree_order_statistics_test.hpp: Same.
* testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
* testsuite/util/performance/assoc/timing/tree_split_join_test.hpp:
Same.
* testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
* testsuite/ext/pb_ds/example/hash_resize_neg.cc: Fixup line numbers.
2006-09-19 Paolo Carlini <pcarlini@suse.de>
* include/tr1/hashtable_policy.h: Uglify all the names.
* include/tr1/hashtable: Likewise.
* include/tr1/unordered_map: Likewise.
* include/tr1/unordered_set: Likewise.
* include/tr1/functional: Uglify struct hash names.
* include/tr1/cmath: Uglify namespace detail to __detail.
2006-09-18 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/regression/res_mng: Remove.
* testsuite/util/regression/res_mng/dbg_ex_allocator_base.cc: Merge..
* testsuite/util/regression/res_mng/forced_exception.hpp: Merge...
* testsuite/util/regression/res_mng/dbg_ex_allocator_base.hpp: Merge..
* testsuite/util/regression/res_mng/dbg_ex_allocator.hpp: Merge..
* testsuite/util/testsuite_allocator.h (throw_allocator): Merge...
* include/ext/throw_allocator.h (throw_allocator): ... into this.
* src/throw_allocator.cc: ...and this.
* include/Makefile.am (ext_headers): Add.
* include/Makefile.in: Regenerate.
* src/Makefile.am (sources): New.
* src/Makefile.in: Regenerate.
* testsuite/lib/libstdc++.exp: Subtract dbg_ex_allocator_base.cc.
* include/ext/pb_ds/detail/map_debug_base.hpp: Adjust
includes, names, and namespaces.
* testsuite/23_containers/list/modifiers/insert/25288.cc: Same.
* testsuite/util/regression/rand/priority_queue/detail/
erase_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/
constructor_destructor_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/
insert_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/
modify_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/
split_join_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/
operator_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/
container_rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/
subscript_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/
operator_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/erase_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/
constructor_destructor_fn_imps.hpp
* testsuite/util/regression/rand/assoc/detail/insert_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/
split_join_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/
container_rand_regression_test.hpp: Same.
* testsuite/util/regression/priority_queue/common_type.hpp: Same.
* testsuite/util/regression/assoc/common_type.hpp: Same.
* testsuite/util/regression/basic_type.hpp: Same.
* testsuite/util/rng/twister_rand_gen.cc: Tweak.
2006-09-18 Tom Tromey <tromey@redhat.com>
* configure: Rebuilt.
2006-09-18 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (_M_group_int): Remove
redundant using-declaration.
2006-09-18 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/typelist.h (cond_type): Remove, use __conditional_type.
2006-09-18 Benjamin Kosnik <bkoz@redhat.com>
Peter Doerfler <gcc@pdoerfler.com>
Paolo Carlini <pcarlini@suse.de>
* include/ext/type_traits.h: New.
(__conditional_type): New.
(__numeric_traits): New.
(__add_unsigned): New.
(__remove_unsigned): New.
(__enable_if): New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* include/ext/pb_ds/detail/type_utils.hpp: Use ext include,
remove duplicates.
* include/tr1/hashtable_policy.h (IF): Use __conditional_type.
(_Max_digits10): Same.
(identity): Use _Identity.
(extract1st): Use _Select1st.
* include/tr1/random (_Select): Use __conditional_type.
(_To_Unsigned_Type): Use __add_unsigned. Linebreak fixups.
* include/bits/locale_facets.tcc (__to_unsigned_type): Remove, use
__add_unsigned.
* include/tr1/random.tcc: Fixups as above.
* include/tr1/unordered_map: Same.
* include/tr1/hashtable: Same.
* include/tr1/unordered_set: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
standard_policies.hpp: Same.
* include/ext/pb_ds/detail/standard_policies.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_filter.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
* include/ext/pb_ds/detail/type_utils.hpp: Same.
* include/ext/pb_ds/trie_policy.hpp: Same.
* docs/html/ext/pb_ds/string_trie_e_access_traits.html: Same.
* include/bits/cpp_type_traits.h (__enable_if): Move to ext, make
boolean argument first.
* include/bits/locale_facets.h: Fixups for __enable_if argument
and namespace switch.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/streambuf_iterator.h: Same.
* include/debug/safe_iterator.h: Same.
* include/tr1/hashtable_policy.h: Same.
* include/tr1/cmath: Same.
* include/tr1/functional: Same.
* include/tr1/functional_iterate.h: Same.
* include/std/std_streambuf.h: Same.
* include/c_std/std_cmath.h: Same.
* testsuite/util/testsuite_tr1.h: Same.
* testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
2006-09-18 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29063
* include/bits/valarray_array.h: Fix typo, undefine
_DEFINE_ARRAY_FUNCTION.
* include/std/std_valarray.h: Undefine _DEFINE_BINARY_OPERATOR.
2006-09-14 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/concurrence.h (__mutex::__mutex): Pass address of
mutex to *_MUTEX_INIT_FUNCTION.
2006-09-13 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/atomicity.h: Move to...
* include/ext/atomicity.h: ...here.
* include/bits/concurrence.h: Move to...
* include/ext/concurrence.h: ...here.
* include/Makefile.am (ext_headers): Additions.
(bits_headers): Subtractions.
* include/Makefile.in: Regenerate.
* include/ext/bitmap_allocator.h (_Mutex), __threads_enabled,
_Lock, _Auto_Lock): Subsume into...
* include/bits/concurrence.h (__mutex): ..this. Error check
locking and unlocking.
(lock): Uglify to...
(__scoped_lock): Use __mutex.
(__glibcxx_mutex_define_initialized): Remove.
(__glibcxx_mutex_type): Remove.
* include/tr1/boost_shared_ptr.h: Formating tweaks, adjustments.
(_Lock_policy): Move from here...
* include/ext/concurrence.h: ... to here.
(__shared_ptr_default_lock_mode): To __default_lock_policy.
(_S_lockfree): To _S_atomic.
Document.
* libsupc++/guard.cc (static_mutex): Subsume into and fixup for...
* include/ext/concurrence.h (__recursive_mutex): ...this. Error
check locking and unlocking.
* libsupc++/eh_alloc.cc: Use __scoped_lock.
* config/os/aix/atomicity.h: Fixups for include paths, mutex to
__scoped_mutex change, removal of locking defines.
* config/os/irix/atomicity.h: Same.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/m68k/atomicity.h: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/cpu/mips/atomicity.h: Same.
* config/cpu/sparc/atomicity.h: Same.
* config/cpu/i386/atomicity.h: Same.
* config/cpu/i486/atomicity.h: Same.
* config/cpu/sh/atomicity.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/bitmap_allocator.h: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/mt_allocator.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/ios_base.h: Same.
* include/tr1/memory: Same.
* src/pool_allocator.cc: Same.
* src/mt_allocator.cc: Same.
* src/locale_init.cc: Same.
* src/ios.cc: Same.
* src/locale.cc: Same.
* src/bitmap_allocator.cc: Same.
* src/ios_init.cc: Same.
* src/debug.cc: Same.
2006-09-12 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/eh_globals.cc: Remove __gnu_internal.
* config/io/basic_file_stdio.cc: Same.
* config/abi/compatibility.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* config/cpu/sh/atomicity.h: Same.
2006-09-10 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_heap.h (sort_heap): Iterator post-decrement is
only required to be convertible to the iterator type.
2006-09-08 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random.tcc (poisson_distribution<>::operator()):
Avoid potential warnings when _IntType is unsigned.
2006-09-08 Benjamin Kosnik <bkoz@redhat.com>
* include/debug/debug.h (_GLIBCXX_DEBUG_ONLY): New.
* include/ext/bitmap_allocator.h (_BALLOC_SANITY_CHECK,
_BALLOC_ASSERT): Remove. Use _GLIBCXX_DEBUG,
_GLIBCXX_DEBUG_ASSERT.
* include/ext/pb_ds/hash_policy.hpp (PB_DS_DBG_ASSERT): Convert to
_GLIBCXX_DEBUG_ASSERT. Formatting corrections.
(PB_DS_DBG_VERIFY): Remove, unused.
(PB_DS_DBG_ONLY): Convert to _GLIBCXX_DEBUG blocks.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/
insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/
binomial_heap_base_.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/
const_point_iterator.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/head.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/types_traits.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
* include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
left_child_next_sibling_heap_.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
const_iterator.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
const_point_iterator.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/map_debug_base.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/
rc_binomial_heap_.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
* testsuite/util/regression/res_mng/forced_exception.hpp: Same.
* testsuite/util/regression/res_mng/dbg_ex_allocator_base.hpp: Same.
* testsuite/util/regression/res_mng/dbg_ex_allocator.hpp: Same.
* testsuite/util/rng/twister_rand_gen.cc
* testsuite/util/native_type/assoc/native_multimap.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_multimap.hpp: Same.
2006-09-05 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.tcc (find(const _CharT*, size_type,
size_type)): Robustify.
* include/ext/vstring.tcc (find(const _CharT*, size_type,
size_type)): Likewise.
2006-09-05 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.tcc (find(const _CharT*, size_type,
size_type)): Reimplement in terms of traits::eq and traits::compare.
* include/ext/vstring.tcc (find(const _CharT*, size_type,
size_type)): Likewise.
* src/string-inst.cc: Remove unneded std::search instantiation.
2006-09-04 Benjamin Kosnik <bkoz@redhat.com>
PR c++/28871
* include/ext/bitmap_allocator.h: Add comment for end of anonymous
namespace.
* include/ext/rope: Same.
* include/bits/cpp_type_traits.h: Same.
* include/tr1/tuple: Same.
* include/tr1/functional_iterate.h: Same.
* include/bits/cpp_type_traits.h: Revert anonymous namespace
change, use nested detail instead.
* testsuite/lib/libstdc++.exp (libstdc++_init): PCHFLAGS revert to
stdc++.h.
2006-09-04 Paolo Carlini <pcarlini@suse.de>
* src/mt_allocator.cc (__pool<true>::_M_reclaim_block): Do
not name a variable __used, badname on BSD.
2006-09-02 Paolo Carlini <pcarlini@suse.de>
Richard Guenther <rguenther@suse.de>
PR libstdc++/24469
* src/mt_allocator.cc (__pool<true>::_M_reserve_block,
__pool<true>::_M_reclaim_block): Fix the logic to avoid
races, exploit atomic counters stored in second part of
the memory pointed by _M_used.
(__pool<true>::_M_initialize): Adjust _M_used allocation.
* include/ext/mt_allocator.h (__pool<true>::_Bin_record):
Update comment.
2006-08-31 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28671 continued
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't use
CXXFLAGS when checking for atomic builtins.
* configure: Regenerate.
* include/bits/atomicity.h: Revert.
2006-08-31 Richard Guenther <rguenther@suse.de>
* include/ext/mt_allocator.h: Remove volatile qualifiers
from data members and corresponding locals and function
signatures.
2006-08-31 Paolo Carlini <pcarlini@suse.de>
* config/abi/pre/gnu.ver: Correct atomic helper function signature
for case where _Atomic_word is long.
2006-08-31 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28671
* include/bits/atomicity.h (__exchange_and_add): Declare only.
(__atomic_add): Same.
* config/cpu/generic/atomicity_builtins/atomicity.h: Remove comment.
2006-08-30 Benjamin Kosnik <bkoz@redhat.com>
Richard Guenther <rguenther@suse.de>
* config/abi/pre/gnu.ver: Spell out exact signatures for atomic
access functions.
* include/bits/atomicity.h (__atomic_add_dispatch): Remove
volatile qualification for _Atomic_word argument.
(__atomic_add_single): Same.
(__exchange_and_add_dispatch): Same.
(__exchange_and_add_single): Same.
2006-08-29 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (subtract_with_carry_01<>::_M_initialize_npows):
New.
(subtract_with_carry_01<>::subtract_with_carry_01(),
subtract_with_carry_01<>::subtract_with_carry_01(unsigned long),
subtract_with_carry_01<>::subtract_with_carry_01(_Gen&)): Use it.
* include/tr1/random.tcc: Define.
* include/tr1/random (xor_combine<>::_M_initialize_max()): New.
(xor_combine<>::xor_combine(), xor_combine<>::xor_combine(const
base1_type&, const base2_type&), xor_combine<>::xor_combine(unsigned
long), xor_combine<>::xor_combine(_Gen&)): Use it.
(xor_combine<>::min, xor_combine<>::max): Adjust.
* include/tr1/random.tcc: Define.
2006-08-29 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4(glibcxx_PCHFLAGS): Set to stdtr1c++.h.
* configure: Regenerate.
* scripts/check_compile: Output current compile line.
2006-08-28 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/23773 partial
* docs/html/abi.html: Update.
2006-08-28 Roger Sayle <roger@eyesopen.com>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algo.h (__heap_select, __introselect): New.
(nth_element): New implementation.
(partial_copy): Use __heap_select.
* testsuite/performance/25_algorithms/nth_element_worst_case.cc: New.
2006-08-28 Paolo Carlini <pcarlini@suse.de>
Roger Sayle <roger@eyesopen.com>
* testsuite/25_algorithms/nth_element/2.cc: New.
2006-08-27 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28830
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
lockfree_weaktoshared.cc: Rename to...
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
default_weaktoshared.cc: ... this; test the default base class.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
mutex_weaktoshared.cc: Run like the other thread tests.
2006-08-25 Paolo Carlini <pcarlini@suse.de>
* docs/html/ext/tr1.html: Update.
2006-08-25 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (bernoulli_distribution::operator()): Fix
wrt generators returning integers.
(uniform_int<>::_M_call): Add.
(uniform_int<>::operator()): Use it.
* include/tr1/random (_Adaptor<>::min, _Adaptor<>::max): Add.
(_Adaptor<>::operator()): Allow for nonzero _M_g.min().
* include/tr1/random.tcc (linear_congruential<>::min, max):
Move inline...
(__mod): Move ...
* include/tr1/random: ... here.
(struct _Mod): Declare.
* include/tr1/random (struct _To_Unsigned_Type): Only declare,
move...
* include/tr1/random.tcc: ... here.
2006-08-22 Phillip Jordan <phillip.m.jordan@gmail.com>
*include/tr1/boost_shared_ptr.h: Added locking policy to
tr1::shared_ptr<> and related classes.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread: New.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
lockfree_weaktoshared.cc: New.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
mutex_weaktoshared.cc: New.
*testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
shared_ptr_neg.cc: Modify.
2006-08-22 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random.tcc (subtract_with_carry_01<>::
seed(_Gen&, false_type)): Fix _M_carry initialization.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/cons/default.cc: Qualify 1 as 1UL.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/cons/gen1.cc: Likewise.
2006-08-22 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (class subtract_with_carry_01<>): Add.
* include/tr1/random.tcc (subtract_with_carry_01<>::
seed(unsigned long), subtract_with_carry_01<>::
seed(_Gen&, false_type), subtract_with_carry_01<>::
operator(), operator<<(std::basic_ostream<>&, const
subtract_with_carry_01<>&), operator>>(std::basic_istream<>&,
subtract_with_carry_01<>&)): Define.
* testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc:
New.
* testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc:
Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/cons/seed1.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/cons/seed2.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/operators/serialize.cc: Likewise.
* docs/html/ext/howto.html: Add two implemented TR1 issues.
* include/tr1/random.tcc (struct _To_Unsigned_Type<>): Move...
* include/tr1/random: ... here.
(class subtract_with_carry<>): Use it everywhere.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/cons/seed1.cc: Qualify 1 as 1UL.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/cons/seed2.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry/operators/serialize.cc: Likewise.
* include/tr1/random (class binomial_distribution<>): Reorder the
data members to save space.
2006-08-20 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (gamma_distribution<>::_M_initialize,
gamma_distribution<>::_M_l_d): Add.
(gamma_distribution<>::gamma_distribution(const result_type&),
operator>>(std::basic_istream<>&, gamma_distribution&)): Use it.
include/tr1/random.tcc (gamma_distribution<>::_M_initialize):
Define.
(gamma_distribution<>::operator()): Adjust.
* include/tr1/random (geometric_distribution<>::_M_initialize): Add.
(geometric_distribution<>::geometric_distribution(const _RealType&),
operator>>(std::basic_istream<>&, geometric_distribution&)): Use it.
2006-08-18 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (class binomial_distribution<>): Add.
* include/tr1/random.tcc (binomial_distribution<>::operator(),
operator<<(std::basic_ostream<>&, const binomial_distribution<>&),
operator>>(std::basic_istream<>&, binomial_distribution<>&,
binomial_distribution<>::_M_waiting(), binomial_distribution<>::
_M_initialize()): Define.
* testsuite/tr1/5_numerical_facilities/random/binomial_distribution/
requirements/typedefs.cc: New.
* include/tr1/random (geometric_distribution<>::
geometric_distribution(const _RealType&)): Fix DEBUG_ASSERT
limits.
* include/tr1/random (poisson_distribution): Add normal_distribution
member, adjust consistently; minor tweaks and rearrangements of the
arithmetic.
(operator>>(std::basic_istream<>&, poisson_distribution<>&)): Move
out of line.
* include/tr1/random.tcc: Adjust.
* include/tr1/random.tcc (normal_distribution<>::operator()): Minor
tweaks.
2006-08-18 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28765
* include/ext/rc_string_base.h (_M_clear): New.
* include/ext/sso_string_base.h (_M_clear): Likewise.
* include/ext/vstring.h (clear): Use it.
2006-08-15 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (poisson_distribution<>::_M_initialize): Add.
(poisson_distribution<>::poisson_distribution(const _RealType&):
Use it.
(operator>>(std::basic_istream<>&, poisson_distribution<>&)):
Likewise.
(poisson_distribution<>::_M_large): Remove.
* include/tr1/random.tcc (poisson_distribution<>::_M_initialize):
Define.
(operator<<(std::basic_ostream<>&, const poisson_distribution<>&)):
Do not output the constants.
* include/tr1/random (operator>>(std::basic_istream<>&,
gamma_distribution&)): Minor tweak.
* include/tr1/random.tcc (poisson_distribution<>::operator()):
Minor tweak.
* include/tr1/random: Consistently, all data members private.
2006-08-15 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random.tcc (mersenne_twister<>::operator()): Revert
last change (per gcc-patches/2006-08/msg00484.html).
2006-08-14 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (class poisson_distribution<>): Add.
* include/tr1/random.tcc (poisson_distribution<>::operator(),
operator<<(std::basic_ostream<>&, const poisson_distribution<>&),
operator>>(std::basic_istream<>&, poisson_distribution<>&,
poisson_distribution<>::poisson_distribution(const _RealType&)):
Define.
* testsuite/tr1/5_numerical_facilities/random/poisson_distribution/
requirements/typedefs.cc: New.
* include/tr1/random.tcc (mersenne_twister<>::operator()): Tweak
a bit for efficiency.
* include/tr1/random.tcc (operator<<(std::basic_ostream<>&,
const normal_distribution<>&), operator>>(std::basic_istream<>&,
normal_distribution<>&)): Do not output _M_saved unnecessarily.
* include/tr1/random: Trivial formatting fixes.
* include/tr1/cmath: Likewise.
2006-08-11 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_bvector.h (__fill_bvector(_Bit_iterator,
_Bit_iterator, bool)): New.
(fill(_Bit_iterator, _Bit_iterator, const bool&)): Use it.
2006-08-10 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random.tcc (gamma_distribution<>::operator()): Fixes
from the Errata of Devroye's book.
2006-08-10 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_bvector.h (_Bit_iterator_base::_M_incr(ptrdiff_t)):
Tidy a bit, thus reducing generated code size.
2006-08-09 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_bvector.h (vector<bool>::_M_copy_aligned): New.
(vector<bool>::vector(const vector&), operator=(const vector&),
reserve(size_type), _M_fill_insert(iterator, size_type, bool),
_M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
* testsuite/performance/23_containers/copy_construct/
vector_bool.cc: New.
* testsuite/23_containers/vector/bool/cons/1.cc: New.
* testsuite/23_containers/vector/bool/cons/2.cc: Likewise.
* include/bits/stl_bvector.h (vector<bool>::_M_fill): Remove.
(fill(_Bit_iterator, _Bit_iterator, const bool&)): New.
(vector<bool>::_M_fill_insert(iterator, size_type, bool)): Adjust.
* include/bits/stl_bvector.h (_M_initialize_range(_InputIterator,
_InputIterator, std::input_iterator_tag)): Remove redundant
assignments.
* include/bits/stl_algo.h (find(istreambuf_iterator<>,
istreambuf_iterator<>, _CharT)): Adjust signature.
* include/bits/streambuf_iterator.h: Likewise.
* include/std/std_streambuf.h: Likewise.
2006-08-09 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
const _Deque_iterator<>&, const _Tp&)): Move...
* include/bits/deque.tcc: ... here.
* include/bits/stl_deque.h: Declare.
2006-08-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/16611
* include/bits/stl_bvector.h (vector<bool>::operator[],
vector<bool>::operator[] const): Do not use iterator::operator+,
hand code.
2006-08-05 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28587
* include/bits/stl_bvector.h (vector<bool>::_M_fill): New.
(vector<bool>::_M_fill_insert): Use it.
* testsuite/performance/23_containers/resize/vector_bool.cc: New.
* testsuite/23_containers/vector/bool/modifiers/insert/1.cc: New.
* testsuite/23_containers/vector/bool/capacity/1.cc: Likewise.
2006-08-04 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_queue.h (priority_queue<>::push,
priority_queue<>::pop): Remove try/catch, just follow the
letter of the Standard.
2006-08-03 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_queue.h: Trivial formatting fixes.
* include/bits/stl_stack.h: Likewise.
2006-08-01 Ed Smith-Rowland <3dw4rd@verizon.net>
* docs/html/ext/tr1.html: Update.
2006-07-31 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
Find the decimal point in cs, instead of ws; tidy.
2006-07-30 Roger Sayle <roger@eyesopen.com>
* include/ext/codevt_specializations.h (__iconv_adaptor): Use
identifier _Tp instead of _T in template argument to avoid conflict.
2006-07-30 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algo.h (stable_sort): Uglify the buf variable.
* include/bits/stl_tempbuf.h (_Temporary_buffer<>::
_M_initialize_buffer): Uglify the val parameter.
2006-07-27 Benjamin Kosnik <bkoz@wells.artheist.org>
PR libstdc++/19664 round 3
* include/Makefile.am (tr1_headers): Add hashtable_policy.h.
* include/Makefile.in: Regenerate.
* include/tr1/hashtable: Move policy classes into...
* include/tr1/hashtable_policy.h: ... this. New.
* src/globals_locale.cc: Move contents....
* src/locale_init.cc: ... to here, put in anonymous namespace.
* src/Makefile.am: Remove globals_locale.cc.
* src/Makefile.in: Regenerate.
* src/locale.cc: Convert __gnu_internal to anonymous namespace.
* src/debug.cc: Same.
* src/ext-inst.cc: Same.
* src/mt_allocator.cc: Same.
* src/pool_allocator.cc: Same.
* include/tr1/random: Convert std::tr1::_Private to anonymous
namespace.
* include/tr1/random.tcc: Same.
* include/tr1/hashtable: Move ::Internal to std::tr1::detail and
enclose bits that can actually be internal in in anonymous
namespace.
* include/tr1/unordered_set: Adjust explicit qualifications for
namespace changes.
* include/tr1/unordered_map: Same.
* include/tr1/cmath: Convert __gnu_internal to nested detail namespace.
* include/bits/cpp_type_traits.h: Move __type_type into anonymous
namespace.
* include/ext/rope: Change _Rope_constants to anonymous namespace.
* include/ext/ropeimpl.h: Same.
* src/ext-inst.cc: Same.
2006-07-24 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cinttypes: Simply protect everything with
_GLIBCXX_USE_C99_INTTYPES_TR1.
* include/tr1/cfenv: Likewise with _GLIBCXX_USE_C99_FENV_TR1.
* include/tr1/cstdint: Likewise with _GLIBCXX_USE_C99_STDINT_TR1.
2006-07-21 Benjamin Kosnik <bkoz@redhat.com>
* include/tr1/random: Make include guards consistent.
* include/tr1/unordered_map: Same.
* include/tr1/hashtable: Same.
* include/tr1/unordered_set: Same.
2006-07-21 Steve Ellcey <sje@cup.hp.com>
PR target/26792
* configure.ac: Use GCC_CHECK_UNWIND_GETIPINFO to
define HAVE_GETIPINFO.
* aclocal.m4: Add include of ../config/unwind_ipinfo.m4.
* config.h.in: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* libsupc++/eh_personality.cc: Check HAVE_GETIPINFO.
2006-07-21 Jason Merrill <jason@redhat.com>
PR libstdc++/19664 round 2
* libsupc++/eh_personality.cc: Wrap extern "C" function
definitions in namespace __cxxabiv1.
2006-07-21 David Daney <ddaney@avtrex.com>
PR libgcj/28426
* acinclude.m4: Added a comment.
2006-07-20 Benjamin Kosnik <bkoz@redhat.com>
Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19664 round 1
* acinclude.m4 (GLIBCXX_ENABLE_VISIBILITY): Check it.
* configure.ac: Use it.
* configure: Regenerate.
* docs/html/configopts.html: Document it.
* include/Makefile.am: Slip in to c++config.
* include/Makefile.in: Regenerate.
* include/bits/c++config (_GLIBCXX_VISIBILITY): New.
(_GLIBCXX_BEGIN_NAMESPACE): Use it.
(_GLIBCXX_END_NAMESPACE): Use it.
(_GLIBCXX_BEGIN_NESTED_NAMESPACE): Use it.
(_GLIBCXX_END_NESTED_NAMESPACE): Use it.
* src/debug.cc: Mark __gnu_internal namespace with hidden
visibility attribute.
* src/ext-inst.cc: Same.
* src/globals_io.cc: Same.
* src/globals_locale.cc: Same.
* src/ios_init.cc: Same.
* src/locale.cc: Same.
* src/mt_allocator.cc: Same.
* src/pool_allocator.cc: Same.
2006-07-16 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: valarray bits)
* include/std/std_valarray.h (valarray<>::shift(int),
valarray<>::cshift(int)): Avoid __builtin_alloca with no limit,
do the work in place.
* testsuite/26_numerics/valarray/28277.cc: New.
2006-07-15 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: ostream bits 1)
* include/bits/ostream.tcc (operator<<(basic_ostream<_CharT>&,
const char*)): Avoid __builtin_alloca with no limit in the
widening.
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
28277-1.cc: New.
2006-07-14 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): New.
* configure.ac: Use it.
* configure: Regenerated.
* config.h.in: Regenerated.
* configure.host: Simplify.
* include/bits/atomicity.h: Adjust macros.
* config/cpu/generic/atomicity.h: Move...
* config/cpu/generic/atomicity_mutex: New.
* config/cpu/generic/atomicity_mutex/atomicity.h: ...here.
* config/cpu/generic/atomic_builtins: Rename...
* config/cpu/generic/atomicity_builtins: ...to this.
* config/cpu/generic/atomicity_builtins/atomicity.h: Moved.
* config/cpu/mips/atomicity.h: Comment MIPS II requirement.
* scripts/testsuite_flags.in: Make --cxxflags reflect CXXFLAGS.
2006-07-14 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (minstd_rand0, minstd_rand, ranlux3, ranlux4):
Use unsigned long as implementation-defined type.
2006-07-14 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random.tcc (struct _To_Unsigned_Type): Add.
(subtract_with_carry<>::seed(_Gen&, false_type)): Use an
unsigned type in the loop, fix factor multiplier, take g
invocations modulo 2^32.
* include/tr1/random.tcc (subtract_with_carry<>::
seed(unsigned long)): Fix value == 0 special case.
* include/tr1/random (struct _Shift): Fix for large shifts.
2006-07-13 Paolo Carlini <pcarlini@suse.de>
* testsuite/performance/21_strings/string_copy_cons_and_dest.cc: New.
2006-07-13 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (pch*_output_anchor): Add.
(pch*_output): Use.
(CLEANFILES): Use.
* include/Makefile.in: Regenerate.
* scripts/check_performance: Be verbose on compile error.
2006-07-12 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am: Revert last change.
* include/Makefile.in: Same.
2006-07-12 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (pch_output): Don't precompile extc++.h.
(pch_output_dirs): Same.
* include/Makefile.in: Regenerate.
* testsuite/lib/libstdc++.exp: Test PCH with stdtr1c++.h.
2006-07-11 Paolo Carlini <pcarlini@suse.de>
* include/ext/codecvt_specializations.h: Fix typo in commit
for libstdc++/28290.
2006-07-11 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (collate<>::do_transform(
const _CharT*, const _CharT*)): Simplify previous fix for
libstdc++/28277, always allocate memory dynamically.
2006-07-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28344
* include/tr1/random (gamma_distribution<>::
gamma_distribution(const result_type&)): Don't use __alpha as
parameter name, a predefined macro on Alpha systems.
2006-07-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28290
* include/ext/codecvt_specializations.h: Fix, adding missing
includes and guards.
2006-07-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: collate bits)
* include/bits/locale_facets.tcc (collate<>::do_transform(
const _CharT*, const _CharT*)): Avoid __builtin_alloca with no
limit; also avoid multiple calls (in a loop).
* testsuite/22_locale/collate/transform/char/28277.cc: New.
* testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
2006-07-10 Mike Stump <mrs@apple.com>
* libsupc++/eh_globals.cc (~__eh_globals_init): Unset _M_init.
2006-07-10 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/15448
* include/Makefile.am: Clean up pch rules.
* include/Makefile.in: Regenerate.
2006-07-09 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (__int_to_char<>(_CharT*,
long, const _CharT*, ios_base::fmtflags), __int_to_char<>(_CharT*,
unsigned long, const _CharT*, ios_base::fmtflags),
__int_to_char<>(_CharT*, long long, const _CharT*, ios_base::fmtflags),
__int_to_char<>(_CharT*, unsigned long long, const _CharT*,
ios_base::fmtflags)): Remove.
(__int_to_char<>(_CharT*, _ValueT, const _CharT*, ios_base::fmtflags,
bool)): Adjust.
(num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)):
Likewise.
2006-07-06 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (class gamma_distribution<>): Add.
* include/tr1/random.tcc (gamma_distribution<>::operator(),
operator<<(std::basic_ostream<>&, const gamma_distribution<>&)):
Define.
* testsuite/tr1/5_numerical_facilities/random/gamma_distribution/
requirements/typedefs.cc: New.
2006-07-06 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/regression/trait/assoc/trait.hpp: Format.
* testsuite/util/regression/rand/priority_queue/
rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/
assoc/container_rand_regression_test.hpp: Same.
* testsuite/util/regression/priority_queue/common_type.hpp: Same.
* testsuite/util/regression/assoc/common_type.hpp: Same.
* testsuite/util/regression/basic_type.hpp: Same.
2006-07-05 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (pch_output): New.
(clean-local): Use it.
* include/Makefile.in: Regenerate.
2006-07-04 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (_Adaptor<>::operator()()): Cast 1 to
result_type.
(variate_generator<>::operator()(),
variate_generator<>::operator()(_Tp)): Inline.
* include/tr1/random: Minor cosmetic changes.
2006-07-03 Paolo Carlini <pcarlini@suse.de>
* include/ext/rc_string_base.h (__rc_string_base::_S_max_size):
Adjust, take into account rounding in _M_create.
(__rc_string_base::_M_create): Add early _S_max_size check.
2006-07-03 Ian Lance Taylor <ian@airs.com>
Paolo Carlini <pcarlini@suse.de>
* include/ext/rc_string_base.h (__rc_string_base::_S_max_size):
Increase by a factor of two.
* include/ext/sso_string_base.h (__sso_string_base::_S_max_size):
Likewise.
2006-07-03 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (__sso_string_base::_M_create): Never
allocate a string bigger than _S_max_size.
2006-06-29 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (pch1_input, pch1_output_builddir,
pch1_outputj_installdir, pch1_source): Move from pch_*.
(pch2_input, pch2_output_builddir,
pch2_output_installdir, pch2_source): Clone for ext.
(pch3_input, pch3_output_builddir,
pch3_output_installdir, pch3_source): Clone for tr1.
(install-pch): Same.
* include/Makefile.in: Regenerate.
* include/precompiled: New directory.
* include/stdc++.h: Move...
* include/precompiled/stdc++.h: ... here.
* include/precompiled/stdtr1c++.h: New.
* include/precompiled/extc++.h: New.
* testsuite/lib/libstdc++.exp (libstdc++_init): Set PCH_CXXFLAGS
to -include bits/stdtr1c++.h.
2006-06-29 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/lib/libstdc++.exp (v3_target_compile): Set timeout to
600.
2006-06-27 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/regression/rand/priority_queue/
rand_regression_test.hpp: Revert.
2006-06-27 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/typelist.h (typelist_append): To append_typelist.
(typelist): To node.
Enclose in namespace typelist.
* testsuite/util/testsuite_common_types.h: Adjust names, namespaces.
* testsuite/performance/23_containers/find/map.cc: Same.
* testsuite/performance/23_containers/create/map.cc: Same.
* testsuite/performance/23_containers/insert_erase/associative.cc:
Same.
* testsuite/performance/23_containers/insert/sequence.cc: Same.
* testsuite/performance/23_containers/insert/associative.cc: Same.
* testsuite/performance/23_containers/create_from_sorted/set.cc: Same.
* testsuite/performance/23_containers/index/map.cc: Same.
* testsuite/performance/23_containers/insert_from_sorted/set.cc: Same.
* testsuite/performance/23_containers/create_sort/list.cc: Same.
* testsuite/performance/23_containers/sort_search/list.cc: Same.
* testsuite/performance/23_containers/producer_consumer/sequence.cc:
Same.
* testsuite/performance/23_containers/producer_consumer/associative.cc:
Same.
2006-06-26 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc:
Reduce iterations by half.
* testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Same.
* testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
* testsuite/util/regression/rand/assoc/rand_regression_test.hpp:
Set probability of compare from 1 to 0.25.
* testsuite/util/regression/rand/priority_queue/
rand_regression_test.hpp: Same.
2006-06-25 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (operator<<(std::basic_ostream<>&,
const linear_congruential<>&), operator>>(std::basic_istream<>&,
linear_congruential<>&), operator<<(std::basic_ostream<>&,
const mersenne_twister<>&), operator>>(std::basic_istream<>&,
mersenne_twister<>&), operator<<(std::basic_ostream<>&,
const subtract_with_carry<>&), operator>>(std::basic_istream<>&,
subtract_with_carry<>&), operator<<(std::basic_ostream<>&,
const discard_block<>&), operator>>(std::basic_istream<>&,
discard_block<>&), operator<<(std::basic_ostream<>&,
const xor_combine<>&), operator>>(std::basic_istream<>&,
xor_combine<>&), operator<<(std::basic_ostream<>&,
const uniform_int<>&), operator>>(std::basic_istream<>&,
uniform_int<>&), operator<<(std::basic_ostream<>&,
const bernoulli_distribution&), operator<<(std::basic_ostream<>&,
const geometric_distribution<>&), operator<<(std::basic_ostream<>&,
const uniform_real<>&), operator>>(std::basic_istream<>&,
uniform_real<>&), operator<<(std::basic_ostream<>&,
const exponential_distribution<>&), operator<<(std::basic_ostream<>&,
const normal_distribution<>&), operator>>(std::basic_istream<>&,
normal_distribution<>&)): Redo per TR1 specs; move out of line...
* include/tr1/random.tcc: ... here.
2006-06-24 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (class normal_distribution<>): Add.
* include/tr1/random.tcc (normal_distribution<>::operator()): Define.
* include/tr1/random.tcc (struct _Max): Remove, "inline" in the
only user, mersenne_twister<>::max().
* include/tr1/random.tcc (struct _Shift): Move...
* include/tr1/random: ... here.
* include/tr1/random.tcc (linear_congruential<>::
linear_congruential(unsigned long), linear_congruential<>::
linear_congruential(_Gen&), mersenne_twister<>::max())): Move inline...
* include/tr1/random: ... here.
* include/tr1/random (exponential_distribution<>::
exponential_distribution(const result_type&)): Add missing
_GLIBCXX_DEBUG_ASSERT.
* testsuite/tr1/5_numerical_facilities/random/
exponential_distribution/requirements/typedefs.cc: New.
* testsuite/tr1/5_numerical_facilities/random/
normal_distribution/requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
bernoulli_distribution/requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
geometric_distribution/requirements/typedefs.cc: Likewise.
2006-06-23 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/27984
* testsuite/lib/libstdc++.exp (libstdc++_init): Adjust
testing includes.
* docs/html/test.html: Adjust for testsuite changes.
2006-06-22 Jonathan Lennox <lennox@cs.columbia.edu>
Paolo Carlini <pcarlini@suse.de>
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Cast to size_t instead.
2006-06-22 Ami Tavory <atavory@gmail.com>
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Fix for 64-bit machines.
2006-06-21 Paolo Carlini <pcarlini@suse.de>
* include/bits/postypes.h (operator==(const fpos<>&, const fpos<>&),
operator!=(const fpos<>&, const fpos<>&)): Add.
* testsuite/27_io/fpos/mbstate_t/6.cc: New.
2006-06-21 Mark Mitchell <mark@codesourcery.com>
* acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): When
cross-compiling, put headers in $prefix/$target/include/c++.
* configure: Regenerated.
2006-06-20 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random.tcc (struct _Private::_Mod_w<>,
_Private::__mod_w<>): Remove.
(struct _Private::_Shift<>): New.
(struct _Private::_Max_w<>): Rename to _Max, use the latter.
(mersenne_twister<>::seed(unsigned long), seed(_Gen&, false_type),
max()): Adjust.
2006-06-20 Vladimir Prus <vladimir@codesourcery.com>
* libsupc++/eh_arm.cc (__cxa_begin_cleanup): Always return 'true'.
2006-06-19 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (xor_combine<>::operator<<): Fix typo.
* include/tr1/random (bernoulli_distribution::min(),
bernoulli_distribution::max(), geometric_distribution<>::min(),
geometric_distribution<>::max()): Remove.
* include/tr1/random (geometric_distribution<>::operator()):
Simplify formula.
* include/tr1/random: Minor cosmetic changes.
* testsuite/tr1/5_numerical_facilities/random/discard_block/
operators/equal.cc: New.
* testsuite/tr1/5_numerical_facilities/random/discard_block/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/discard_block/
operators/serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/
operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/
operators/serialize.cc: Likewise.
2006-06-17 Ami Tavory <atavory@gmail.com>
Paolo Carlini <pcarlini@suse.de>
* testsuite/util/rng/twister_rand_gen.cc: Adapt to simply use
tr1::mt19937.
* testsuite/util/rng/twister_rand_gen.hpp: Likewise.
2006-06-16 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (uniform_real<>::uniform_real(_RealType,
_RealType)): Implement.
(uniform_real<>::min()): Likewise.
(uniform_real<>::max()): Likewise.
(uniform_real<>::reset()): Likewise.
* include/tr1/random (class uniform_real<>): Minor cosmetic tweaks.
2006-06-16 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format):
Ignore the value of the __err argument.
(time_get<>::do_get_weekday): Likewise.
(time_get<>::do_get_monthname): Likewise.
* testsuite/22_locale/time_get/get_year/wchar_t/5.cc: New.
* testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
2006-06-15 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/type_utils.hpp (numeric_traits): Add,
const expression interface to std::numeric_limits::min and max
functions.
* include/ext/pb_ds/trie_policy.hpp (string_trie_e_access_traits):
Use it.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Format.
* include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
2006-06-15 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random.tcc (mersenne_twister<>::operator()()):
Reload the last position of the _M_x vector too.
2006-06-15 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (class xor_combine): Fix result_type typedef.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/
cons/default.cc: New.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/
requirements/typedefs.cc: Tweak.
* include/tr1/random: Minor cosmetic changes.
2006-06-14 Ami Tavory <atavory@gmail.com>
Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_assoc: Delete.
* include/ext/pb_ds: Add.
* docs/html/ext/pb_assoc: Delete.
* docs/html/ext/pb_ds: Add.
* testsuite/ext/pb_assoc: Delete.
* testsuite/ext/pb_ds: Add.
* testsuite/performance/ext: Add.
* testsuite/performance/ext/pb_ds: Add.
* testsuite/util/regression: New.
* testsuite/util/rng: New.
* testsuite/util/native_type: New.
* testsuite/util/common_type: New.
* testsuite/util/performance: New.
* testsuite/util/hash_fn: New.
* testsuite/util/io: New.
* testsuite/util/statistic: New.
* scripts/make_graph.py: New.
* scripts/make_graphs.py: New.
* testsuite/data/thirty_years_among_the_dead_preproc.txt: Add.
* testsuite/data/make_graph_htmls.xml: Add.
* testsuite/data/make_graph_test_infos.xml: Add.
* testsuite/lib/libstdc++.exp (v3-build_support): Add in new
object files for regression testing.
* docs/html/documentation.html: Adjust links.
* include/Makefile.am (install-headers): Update for new sources,
directories.
* include/Makefine.in: Regenerate.
* scripts/testsuite_flags.in: Adjust to testsuite/util path.
* scripts/check_performance: Simplify, adjust for new testsuite output.
* testsuite/Makefile.am (check-performance): Adjust.
(doc-performance): New.
* testsuite/Makefile.in: Regenerate.
* include/ext/pb_ds: New.
* include/ext/pb_ds/assoc_container.hpp: Same.
* include/ext/pb_ds/detail: New.
* include/ext/pb_ds/detail/binomial_heap_base_: New.
* include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/resize_policy: New.
* include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/container_base_dispatch.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_: New.
* include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/standard_policies.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/typelist_assoc_container.hpp: Same.
* include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator: New.
* include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/const_point_iterator.hpp: Same.
* include/ext/pb_ds/detail/typelist.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_: New.
* include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/head.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/cond_dtor_entry_dealtor.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_: New.
* include/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/cond_dtor_entry_dealtor.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/cond_key_dtor_entry_dealtor.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_: New.
* include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/standard_policies.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/standard_policies.hpp: Same.
* include/ext/pb_ds/detail/typelist: New.
* include/ext/pb_ds/detail/typelist/typelist_flatten.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_contains.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_typelist_append.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_apply.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_filter.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_append.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_assoc_container_find.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_transform.hpp: Same.
* include/ext/pb_ds/detail/typelist/typelist_at_index.hpp: Same.
* include/ext/pb_ds/detail/tree_policy: New.
* include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
* include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
* include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Same.
* include/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp: Same.
* include/ext/pb_ds/detail/basic_tree_policy: New.
* include/ext/pb_ds/detail/basic_tree_policy/basic_tree_policy_base.hpp: Same.
* include/ext/pb_ds/detail/basic_tree_policy/null_node_metadata.hpp: Same.
* include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: Same.
* include/ext/pb_ds/detail/types_traits.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_: New.
* include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/trie_policy: New.
* include/ext/pb_ds/detail/trie_policy/string_trie_e_access_traits_imp.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/sample_trie_e_access_traits.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Same.
* include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
* include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_: Name.
* include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_: New.
* include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
* include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/type_utils.hpp: Same.
* include/ext/pb_ds/detail/eq_fn: New.
* include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
* include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
* include/ext/pb_ds/detail/basic_types.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy: New.
* include/ext/pb_ds/detail/list_update_policy/mtf_lu_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy/counter_lu_metadata.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy/counter_lu_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_: New.
* include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_: New.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/null_metadata.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/const_point_iterator.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_: New.
* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/map_debug_base.hpp: Same.
* include/ext/pb_ds/detail/hash_fn: New.
* include/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_: New.
* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_: New.
* include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_: New.
* include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_: New.
* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/list_update_policy.hpp: Same.
* include/ext/pb_ds/exception.hpp: Same.
* include/ext/pb_ds/tree_policy.hpp: Same.
* include/ext/pb_ds/tag_and_trait.hpp: Same.
* include/ext/pb_ds/hash_policy.hpp: Same.
* include/ext/pb_ds/trie_policy.hpp: Same.
* include/ext/pb_ds/priority_queue.hpp: Same.
* docs/html/ext/pb_ds: New.
* docs/html/ext/pb_ds/container_tag.html: Same.
* docs/html/ext/pb_ds/trivial_iterator_tag.html: Same.
* docs/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png
* docs/html/ext/pb_ds/sample_trie_e_access_traits.html: Same.
* docs/html/ext/pb_ds/gp_hash_table.html: Same.
* docs/html/ext/pb_ds/priority_queue_tag_cd.svg
* docs/html/ext/pb_ds/container_cd.svg
* docs/html/ext/pb_ds/linear_probe_fn.html: Same.
* docs/html/ext/pb_ds/hash_random_int_erase_mem_usage_test_local.png
* docs/html/ext/pb_ds/quadratic_probe_fn.html: Same.
* docs/html/ext/pb_ds/assoc_regression_tests.html: Same.
* docs/html/ext/pb_ds/tree_tag.html: Same.
* docs/html/ext/pb_ds/hash_random_int_erase_mem_usage_test.html: Same.
* docs/html/ext/pb_ds/interface.html: Same.
* docs/html/ext/pb_ds/hash_zlob_random_int_find_timing_test_msvc.png
* docs/html/ext/pb_ds/hash_random_int_subscript_find_timing_test.html: Same.
* docs/html/ext/pb_ds/lu_based_containers.html: Same.
* docs/html/ext/pb_ds/embedded_lists_3.png
* docs/html/ext/pb_ds/tree_text_find_find_timing_test.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_hash_local.png
* docs/html/ext/pb_ds/assoc_performance_tests.html: Same.
* docs/html/ext/pb_ds/list_update.html: Same.
* docs/html/ext/pb_ds/priority_queue_random_int_push_pop_timing_test_gcc.png
* docs/html/ext/pb_ds/tree_text_insert_timing_test_pat_trie_local.png
* docs/html/ext/pb_ds/point_iterators_range_ops_1.png
* docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_insert_msvc.png
* docs/html/ext/pb_ds/hash_zlob_random_int_find_timing_test_gcc.png
* docs/html/ext/pb_ds/text_find_timing_test_tree_like_msvc.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_tree_local.png
* docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_local.png
* docs/html/ext/pb_ds/tree_text_insert_timing_test_pat_trie_msvc.png
* docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test.html: Same.
* docs/html/ext/pb_ds/move_to_front_lu_policy.html: Same.
* docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_hash_gcc.png
* docs/html/ext/pb_ds/hash_random_int_find_find_timing_test.html: Same.
* docs/html/ext/pb_ds/string_trie_e_access_traits.html: Same.
* docs/html/ext/pb_ds/prerequisites.html: Same.
* docs/html/ext/pb_ds/gp_hash_tag.html: Same.
* docs/html/ext/pb_ds/priority_queue_tag_cd.png
* docs/html/ext/pb_ds/container_cd.png
* docs/html/ext/pb_ds/priority_queue_text_join_timing_test_gcc.png
* docs/html/ext/pb_ds/container_base.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_hash_msvc.png
* docs/html/ext/pb_ds/tree_random_int_find_find_timing_test.html: Same.
* docs/html/ext/pb_ds/binary_priority_queue_random_int_push_timing_test_msvc.png
* docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_find_local.png
* docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_find_gcc.png
* docs/html/ext/pb_ds/priority_queue_text_push_pop_timing_test_msvc.png
* docs/html/ext/pb_ds/random_int_find_find_timing_test_tree_msvc.png
* docs/html/ext/pb_ds/text_find_timing_test_hash_local.png
* docs/html/ext/pb_ds/tree_text_insert_timing_test_node_tree_msvc.png
* docs/html/ext/pb_ds/ov_tree_tag.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_hash_local.png
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_hash_msvc.png
* docs/html/ext/pb_ds/priority_queue_text_pop_mem_usage_test_msvc.png
* docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png
* docs/html/ext/pb_ds/list_update_tag.html: Same.
* docs/html/ext/pb_ds/balls_and_bins.png
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_tree_local.png
* docs/html/ext/pb_ds/disclaimer.html: Same.
* docs/html/ext/pb_ds/insert_error.html: Same.
* docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_hash_gcc.png
* docs/html/ext/pb_ds/ccgp_hash_random_int_subscript_timing_test_insert_gcc.png
* docs/html/ext/pb_ds/examples.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_small.html: Same.
* docs/html/ext/pb_ds/pairing_priority_queue_text_push_pop_timing_test_gcc.png
* docs/html/ext/pb_ds/sample_probe_fn.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_hash_local.png
* docs/html/ext/pb_ds/priority_queue_text_push_timing_test.html: Same.
* docs/html/ext/pb_ds/priority_queue_random_int_push_timing_test_gcc.png
* docs/html/ext/pb_ds/null_mapped_type.html: Same.
* docs/html/ext/pb_ds/binary_priority_queue_random_int_push_timing_test_gcc.png
* docs/html/ext/pb_ds/tree_order_statistics_timing_test_gcc.png
* docs/html/ext/pb_ds/associative_container_tag.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_tree_local.png
* docs/html/ext/pb_ds/design.html: Same.
* docs/html/ext/pb_ds/cc_hash_max_collision_check_resize_trigger.html: Same.
* docs/html/ext/pb_ds/pairing_heap_tag.html: Same.
* docs/html/ext/pb_ds/tree_text_lor_find_timing_test_gcc.png
* docs/html/ext/pb_ds/references.html: Same.
* docs/html/ext/pb_ds/tree_order_statistics_timing_test_msvc.png
* docs/html/ext/pb_ds/hash_load_check_resize_trigger.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_pop_mem_usage_test_gcc.png
* docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png
* docs/html/ext/pb_ds/hash_random_int_erase_mem_usage_test_gcc.png
* docs/html/ext/pb_ds/pq_different_underlying_dss.png
* docs/html/ext/pb_ds/insert_resize_sequence_diagram1.png
* docs/html/ext/pb_ds/pq_regression_tests.html: Same.
* docs/html/ext/pb_ds/sample_tree_node_update.html: Same.
* docs/html/ext/pb_ds/invalidation_guarantee_erase.png
* docs/html/ext/pb_ds/basic_invalidation_guarantee.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_hash_local.png
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_hash_gcc.png
* docs/html/ext/pb_ds/hash_zlob_random_int_find_timing_test_local.png
* docs/html/ext/pb_ds/point_iterators_range_ops_2.png
* docs/html/ext/pb_ds/null_probe_fn.html: Same.
* docs/html/ext/pb_ds/hash_prime_size_policy.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png
* docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_gcc.png
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_tree_local.png
* docs/html/ext/pb_ds/binary_priority_queue_random_int_push_timing_test_local.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png
* docs/html/ext/pb_ds/multimap_text_find_timing_test_large.html: Same.
* docs/html/ext/pb_ds/sample_resize_policy.html: Same.
* docs/html/ext/pb_ds/binomial_heap_tag.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_pop_mem_usage_test_local.png
* docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_pairing_thin_local.png
* docs/html/ext/pb_ds/tree_text_lor_find_find_timing_test.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_join_timing_test_msvc.png
* docs/html/ext/pb_ds/trie_based_containers.html: Same.
* docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_insert_gcc.png
* docs/html/ext/pb_ds/tree_split_join_timing_test_local.png
* docs/html/ext/pb_ds/text_find_timing_test_hash_gcc.png
* docs/html/ext/pb_ds/motivation.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_tree_msvc.png
* docs/html/ext/pb_ds/tree_split_join_timing_test_gcc.png
* docs/html/ext/pb_ds/tree.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_hash_gcc.png
* docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_insert_msvc.png
* docs/html/ext/pb_ds/invalidation_guarantee_cd.png
* docs/html/ext/pb_ds/tutorial.html: Same.
* docs/html/ext/pb_ds/null_trie_node_update.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_gcc.png
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_tree_msvc.png
* docs/html/ext/pb_ds/ccgp_hash_random_int_subscript_timing_test_insert_local.png
* docs/html/ext/pb_ds/point_iterators_cd.png
* docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_hash_local.png
* docs/html/ext/pb_ds/priority_queue_random_int_push_pop_timing_test_local.png
* docs/html/ext/pb_ds/rb_tree_tag.html: Same.
* docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_find_msvc.png
* docs/html/ext/pb_ds/pairing_priority_queue_text_push_timing_test_msvc.png
* docs/html/ext/pb_ds/tree_text_insert_timing_test_pat_trie_gcc.png
* docs/html/ext/pb_ds/exceptions.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_msvc.png
* docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_tree_local.png
* docs/html/ext/pb_ds/hash_policy_cd.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small.html: Same.
* docs/html/ext/pb_ds/ds_gen.html: Same.
* docs/html/ext/pb_ds/hash_exponential_size_policy.html: Same.
* docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_insert_local.png
* docs/html/ext/pb_ds/hash_random_int_erase_mem_usage_test_msvc.png
* docs/html/ext/pb_ds/index.html: Same.
* docs/html/ext/pb_ds/binary_heap_tag.html: Same.
* docs/html/ext/pb_ds/basic_hash_tag.html: Same.
* docs/html/ext/pb_ds/trie_order_statistics_node_update.html: Same.
* docs/html/ext/pb_ds/sample_resize_trigger.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_push_timing_test_local.png
* docs/html/ext/pb_ds/hash_text_find_find_timing_test.html: Same.
* docs/html/ext/pb_ds/tree_text_insert_timing_test.html: Same.
* docs/html/ext/pb_ds/trie_tag.html: Same.
* docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_find_local.png
* docs/html/ext/pb_ds/pq_tests.html: Same.
* docs/html/ext/pb_ds/insert_resize_sequence_diagram2.png
* docs/html/ext/pb_ds/node_invariant_invalidations.png
* docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_msvc.png
* docs/html/ext/pb_ds/resize_policy_cd.png
* docs/html/ext/pb_ds/embedded_lists_1.png
* docs/html/ext/pb_ds/hash_ranged_hash_range_hashing_fns.png
* docs/html/ext/pb_ds/null_lu_metadata.html: Same.
* docs/html/ext/pb_ds/tree_order_statistics_timing_test.html: Same.
* docs/html/ext/pb_ds/trie_prefix_search_node_update.html: Same.
* docs/html/ext/pb_ds/hash_range_hashing_seq_diagram.png
* docs/html/ext/pb_ds/point_invalidation_guarantee.html: Same.
* docs/html/ext/pb_ds/direct_mod_range_hashing.html: Same.
* docs/html/ext/pb_ds/tree_text_insert_timing_test_vector_tree_local.png
* docs/html/ext/pb_ds/priority_queue_random_int_push_pop_timing_test_msvc.png
* docs/html/ext/pb_ds/misc.html: Same.
* docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_hash_local.png
* docs/html/ext/pb_ds/counter_lu_policy.html: Same.
* docs/html/ext/pb_ds/different_underlying_dss.png
* docs/html/ext/pb_ds/restoring_node_invariants.png
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_large.html: Same.
* docs/html/ext/pb_ds/pairing_priority_queue_text_push_timing_test_local.png
* docs/html/ext/pb_ds/sample_update_policy.html: Same.
* docs/html/ext/pb_ds/pairing_priority_queue_text_push_timing_test_gcc.png
* docs/html/ext/pb_ds/tree_order_statistics_timing_test_local.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png
* docs/html/ext/pb_ds/simple_list.png
* docs/html/ext/pb_ds/text_find_timing_test_hash_msvc.png
* docs/html/ext/pb_ds/assoc_examples.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_push_pop_timing_test_local.png
* docs/html/ext/pb_ds/hash_based_containers.html: Same.
* docs/html/ext/pb_ds/text_find_timing_test_tree_like_local.png
* docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_tree_local.png
* docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_tree_gcc.png
* docs/html/ext/pb_ds/tree_node_iterator.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png
* docs/html/ext/pb_ds/trie_node_iterator.html: Same.
* docs/html/ext/pb_ds/tree_based_containers.html: Same.
* docs/html/ext/pb_ds/hash_random_int_subscript_insert_timing_test.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png
* docs/html/ext/pb_ds/ccgp_hash_random_int_subscript_timing_test_insert_msvc.png
* docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_hash_msvc.png
* docs/html/ext/pb_ds/priority_queue_text_push_timing_test_gcc.png
* docs/html/ext/pb_ds/rationale_null_node_updator.png
* docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_pairing_thin_local.png
* docs/html/ext/pb_ds/lu.png
* docs/html/ext/pb_ds/assoc_container_traits.html: Same.
* docs/html/ext/pb_ds/gp_hash_random_int_find_timing_test_msvc.png
* docs/html/ext/pb_ds/assoc_design.html: Same.
* docs/html/ext/pb_ds/splay_tree_tag.html: Same.
* docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_find_gcc.png
* docs/html/ext/pb_ds/priority_queue_random_int_push_timing_test.html: Same.
* docs/html/ext/pb_ds/assoc_container_tag_cd.svg
* docs/html/ext/pb_ds/resize_error.html: Same.
* docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_hash_msvc.png
* docs/html/ext/pb_ds/tree_text_insert_timing_test_node_tree_gcc.png
* docs/html/ext/pb_ds/priority_queue_text_join_timing_test.html: Same.
* docs/html/ext/pb_ds/basic_tree_assoc_container_const_node_iterator.html: Same.
* docs/html/ext/pb_ds/gp_hash_random_int_find_timing_test_gcc.png
* docs/html/ext/pb_ds/trie_const_node_iterator.html: Same.
* docs/html/ext/pb_ds/hash_zlob_random_int_find_find_timing_test.html: Same.
* docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_tree_gcc.png
* docs/html/ext/pb_ds/sample_size_policy.html: Same.
* docs/html/ext/pb_ds/tree_text_insert_timing_test_vector_tree_gcc.png
* docs/html/ext/pb_ds/cc_hash_table.html: Same.
* docs/html/ext/pb_ds/node_invariants.png
* docs/html/ext/pb_ds/tree_split_join_timing_test_msvc.png
* docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test.html: Same.
* docs/html/ext/pb_ds/tree_order_statistics_node_update.html: Same.
* docs/html/ext/pb_ds/cc_hash_random_int_find_timing_test_msvc.png
* docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_insert_local.png
* docs/html/ext/pb_ds/priority_queue.html: Same.
* docs/html/ext/pb_ds/assoc_tests.html: Same.
* docs/html/ext/pb_ds/assoc_container_tag_cd.png
* docs/html/ext/pb_ds/basic_hash_table.html: Same.
* docs/html/ext/pb_ds/basic_tree_tag.html: Same.
* docs/html/ext/pb_ds/tree_split_join_timing_test.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_local.png
* docs/html/ext/pb_ds/insert_resize_sequence_diagram3.png
* docs/html/ext/pb_ds/embedded_lists_2.png
* docs/html/ext/pb_ds/random_int_find_find_timing_test_tree_local.png
* docs/html/ext/pb_ds/sample_ranged_probe_fn.html: Same.
* docs/html/ext/pb_ds/random_int_find_find_timing_test_tree_gcc.png
* docs/html/ext/pb_ds/sample_trie_node_update.html: Same.
* docs/html/ext/pb_ds/introduction.html: Same.
* docs/html/ext/pb_ds/pq_performance_tests.html: Same.
* docs/html/ext/pb_ds/pat_trie.png
* docs/html/ext/pb_ds/range_invalidation_guarantee.html: Same.
* docs/html/ext/pb_ds/contact.html: Same.
* docs/html/ext/pb_ds/sample_range_hashing.html: Same.
* docs/html/ext/pb_ds/priority_queue_random_int_push_timing_test_local.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png
* docs/html/ext/pb_ds/update_seq_diagram.png
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_tree_gcc.png
* docs/html/ext/pb_ds/direct_mask_range_hashing.html: Same.
* docs/html/ext/pb_ds/tests.html: Same.
* docs/html/ext/pb_ds/cc_hash_random_int_find_timing_test_gcc.png
* docs/html/ext/pb_ds/tree_node_updator_policy_cd.png
* docs/html/ext/pb_ds/text_find_timing_test_tree_like_gcc.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large.html: Same.
* docs/html/ext/pb_ds/trie_node_updator_policy_cd.png
* docs/html/ext/pb_ds/priority_queue_random_int_push_timing_test_msvc.png
* docs/html/ext/pb_ds/concepts.html: Same.
* docs/html/ext/pb_ds/pq_examples.html: Same.
* docs/html/ext/pb_ds/priority_queue_tag.html: Same.
* docs/html/ext/pb_ds/priority_queue_random_int_push_pop_timing_test.html: Same.
* docs/html/ext/pb_ds/update_policy_cd.png
* docs/html/ext/pb_ds/thin_heap_tag.html: Same.
* docs/html/ext/pb_ds/pairing_priority_queue_text_push_pop_timing_test_msvc.png
* docs/html/ext/pb_ds/basic_tree.html: Same.
* docs/html/ext/pb_ds/null_hash_fn.html: Same.
* docs/html/ext/pb_ds/null_tree_node_update.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png
* docs/html/ext/pb_ds/trie.html: Same.
* docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_tree_msvc.png
* docs/html/ext/pb_ds/rc_binomial_heap_tag.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_push_timing_test_msvc.png
* docs/html/ext/pb_ds/pq_container_traits.html: Same.
* docs/html/ext/pb_ds/pq_design.html: Same.
* docs/html/ext/pb_ds/checked_by_tidy.gif
* docs/html/ext/pb_ds/tree_text_insert_timing_test_node_tree_local.png
* docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png
* docs/html/ext/pb_ds/priority_queue_text_push_pop_timing_test.html: Same.
* docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_tree_gcc.png
* docs/html/ext/pb_ds/pairing_priority_queue_text_push_pop_timing_test_local.png
* docs/html/ext/pb_ds/acks.html: Same.
* docs/html/ext/pb_ds/gp_hash_random_int_find_timing_test_local.png
* docs/html/ext/pb_ds/cc_hash_tag.html: Same.
* docs/html/ext/pb_ds/sample_ranged_hash_fn.html: Same.
* docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_tree_msvc.png
* docs/html/ext/pb_ds/priority_queue_text_pop_mem_usage_test.html: Same.
* docs/html/ext/pb_ds/multimap_text_find_timing_test_small.html: Same.
* docs/html/ext/pb_ds/tree_text_lor_find_timing_test_msvc.png
* docs/html/ext/pb_ds/hash_range_hashing_seq_diagram2.png
* docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_find_msvc.png
* docs/html/ext/pb_ds/PythonPoweredSmall.gif
* docs/html/ext/pb_ds/cc_hash_random_int_find_timing_test_local.png
* docs/html/ext/pb_ds/pat_trie_tag.html: Same.
* docs/html/ext/pb_ds/hash_standard_resize_policy.html: Same.
* docs/html/ext/pb_ds/tree_text_insert_timing_test_vector_tree_msvc.png
* docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_insert_gcc.png
* docs/html/ext/pb_ds/join_error.html: Same.
* docs/html/ext/pb_ds/priority_queue_text_push_pop_timing_test_gcc.png
* docs/html/ext/pb_ds/priority_queue_text_join_timing_test_local.png
* testsuite/ext/pb_ds: New.
* testsuite/ext/pb_ds/regression: New.
* testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/associative_containers.cc: Same.
* testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/priority_queues.cc: Same.
* testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Same.
* testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/example: New.
* testsuite/ext/pb_ds/example/hash_shift_mask.cc: Same.
* testsuite/ext/pb_ds/example/basic_set.cc: Same.
* testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Same.
* testsuite/ext/pb_ds/example/hash_resize_neg.cc: Same.
* testsuite/ext/pb_ds/example/store_hash.cc: Same.
* testsuite/ext/pb_ds/example/assoc_container_traits.cc: Same.
* testsuite/ext/pb_ds/example/hash_load_set_change.cc: Same.
* testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
* testsuite/ext/pb_ds/example/hash_resize.cc: Same.
* testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
* testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
* testsuite/ext/pb_ds/example/basic_multiset.cc: Same.
* testsuite/ext/pb_ds/example/priority_queue_xref.cc: Same.
* testsuite/ext/pb_ds/example/hash_find_neg.cc: Same.
* testsuite/ext/pb_ds/example/erase_if.cc: Same.
* testsuite/ext/pb_ds/example/priority_queue_container_traits.cc: Same.
* testsuite/ext/pb_ds/example/tree_join.cc: Same.
* testsuite/ext/pb_ds/example/basic_map.cc: Same.
* testsuite/ext/pb_ds/example/trie_split.cc: Same.
* testsuite/ext/pb_ds/example/priority_queue_split_join.cc: Same.
* testsuite/ext/pb_ds/example/priority_queue_dijkstra.cc: Same.
* testsuite/ext/pb_ds/example/priority_queue_erase_if.cc: Same.
* testsuite/ext/pb_ds/example/hash_mod.cc: Same.
* testsuite/ext/pb_ds/example/tree_order_statistics_join.cc: Same.
* testsuite/ext/pb_ds/example/trie_dna.cc: Same.
* testsuite/ext/pb_ds/example/hash_initial_size.cc: Same.
* testsuite/ext/pb_ds/example/basic_priority_queue.cc: Same.
* testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
* testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
* testsuite/performance/ext: New.
* testsuite/performance/ext/pb_ds: New.
* testsuite/performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
* testsuite/performance/ext/pb_ds/text_find_timing.cc: Same.
* testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
* testsuite/performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
* testsuite/performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc: Same.
* testsuite/performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
* testsuite/performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
* testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
* testsuite/performance/ext/pb_ds/random_int_find_timing.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp: Same.
* testsuite/performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_find_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/priority_queue_text_modify_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
* testsuite/performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
* testsuite/performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
* testsuite/performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
* testsuite/performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc: Same.
* testsuite/performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
* testsuite/performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
* testsuite/performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_insert_timing.hpp: Same.
* testsuite/performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
* testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
* testsuite/data/make_graph_test_infos.xml: Same.
* testsuite/data/thirty_years_among_the_dead_preproc.txt: New.
* testsuite/data/make_graph_htmls.xml: Same.
* testsuite/util/regression: New.
* testsuite/util/regression/trait: New.
* testsuite/util/regression/trait/priority_queue: New.
* testsuite/util/regression/trait/priority_queue/trait.hpp: Same.
* testsuite/util/regression/trait/erase_if_fn.hpp: Same.
* testsuite/util/regression/trait/assoc: New.
* testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
* testsuite/util/regression/trait/assoc/node_update_trait.hpp: Same.
* testsuite/util/regression/trait/assoc/get_set_load_trait.hpp: Same.
* testsuite/util/regression/trait/assoc/get_set_loads_trait.hpp: Same.
* testsuite/util/regression/trait/assoc/trait.hpp: Same.
* testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
* testsuite/util/regression/trait/assoc/resize_trait.hpp: Same.
* testsuite/util/regression/trait/assoc/to_string.hpp: Same.
* testsuite/util/regression/rand: New.
* testsuite/util/regression/rand/priority_queue: New.
* testsuite/util/regression/rand/priority_queue/detail: New.
* testsuite/util/regression/rand/priority_queue/detail/erase_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/cmp_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/policy_access_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/defs_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/it_conversion_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/constructor_destructor_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/diagnostic_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/insert_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/clear_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/modify_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/split_join_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/detail/operator_fn_imps.hpp: Same.
* testsuite/util/regression/rand/priority_queue/rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/priority_queue/container_rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/io: New.
* testsuite/util/regression/rand/io/priority_queue: New.
* testsuite/util/regression/rand/io/priority_queue/xml_formatter.hpp: Same.
* testsuite/util/regression/rand/io/assoc: New.
* testsuite/util/regression/rand/io/assoc/xml_formatter.hpp: Same.
* testsuite/util/regression/rand/io/xml_formatter.hpp: Same.
* testsuite/util/regression/rand/assoc: New.
* testsuite/util/regression/rand/assoc/detail: New.
* testsuite/util/regression/rand/assoc/detail/subscript_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/cmp_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/policy_access_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/defs_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/it_conversion_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/diagnostic_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/clear_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/get_set_load_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/operator_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/erase_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/resize_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/constructor_destructor_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/insert_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/split_join_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/detail/get_set_loads_fn_imps.hpp: Same.
* testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/assoc/container_rand_regression_test.hpp: Same.
* testsuite/util/regression/priority_queue: New.
* testsuite/util/regression/priority_queue/common_type.hpp: Same.
* testsuite/util/regression/basic_type.hpp: Same.
* testsuite/util/regression/assoc: New.
* testsuite/util/regression/assoc/common_type.hpp: Same.
* testsuite/util/regression/res_mng: New.
* testsuite/util/regression/res_mng/forced_exception.hpp: Same.
* testsuite/util/regression/res_mng/dbg_ex_allocator_base.cc: Same.
* testsuite/util/regression/res_mng/dbg_ex_allocator_base.hpp: Same.
* testsuite/util/regression/res_mng/dbg_ex_allocator.hpp: Same.
* testsuite/util/rng: New.
* testsuite/util/rng/twister_rand_gen.cc: Same.
* testsuite/util/rng/twister_rand_gen.hpp: Same.
* testsuite/util/native_type: New.
* testsuite/util/native_type/priority_queue: New.
* testsuite/util/native_type/priority_queue/native_priority_queue.hpp: Same.
* testsuite/util/native_type/priority_queue/native_pq_tag.hpp: Same.
* testsuite/util/native_type/assoc: New.
* testsuite/util/native_type/assoc/native_multimap.hpp: Same.
* testsuite/util/native_type/assoc/native_tree_tag.hpp: Same.
* testsuite/util/native_type/assoc/native_set.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_multimap.hpp: Same.
* testsuite/util/native_type/assoc/native_map.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_tag.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_set.hpp: Same.
* testsuite/util/native_type/assoc/native_hash_map.hpp: Same.
* testsuite/util/common_type: New.
* testsuite/util/common_type/priority_queue
* testsuite/util/common_type/priority_queue/common_type.hpp: Same.
* testsuite/util/common_type/priority_queue/string_form.hpp: Same.
* testsuite/util/common_type/priority_queue/detail
* testsuite/util/common_type/priority_queue/detail/ds_string_form.hpp: Same.
* testsuite/util/common_type/assoc: New.
* testsuite/util/common_type/assoc/common_type.hpp: Same.
* testsuite/util/common_type/assoc/string_form.hpp: Same.
* testsuite/util/common_type/assoc/template_policy.hpp: Same.
* testsuite/util/common_type/assoc/detail: New.
* testsuite/util/common_type/assoc/detail/resize_policy_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/trigger_policy_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/comb_hash_fn_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/size_policy_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/probe_fn_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/tree_supports_order_statistics.hpp: Same.
* testsuite/util/common_type/assoc/detail/trie_supports_prefix_search.hpp: Same.
* testsuite/util/common_type/assoc/detail/list_update_policy_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/trie_supports_order_statistics.hpp: Same.
* testsuite/util/common_type/assoc/detail/store_hash_string_form.hpp: Same.
* testsuite/util/common_type/assoc/native_set.hpp: Same.
* testsuite/util/performance: New.
* testsuite/util/performance/priority_queue: New.
* testsuite/util/performance/priority_queue/mem_usage: New.
* testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing: New.
* testsuite/util/performance/priority_queue/timing/push_pop_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/push_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/join_test.hpp: Same.
* testsuite/util/performance/priority_queue/timing/modify_test.hpp: Same.
* testsuite/util/performance/io: New.
* testsuite/util/performance/io/xml_formatter.hpp: Same.
* testsuite/util/performance/assoc: New.
* testsuite/util/performance/assoc/mem_usage: New.
* testsuite/util/performance/assoc/mem_usage/multimap_insert_test.hpp: Same.
* testsuite/util/performance/assoc/mem_usage/erase_test.hpp: Same.
* testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
* testsuite/util/performance/assoc/timing: New.
* testsuite/util/performance/assoc/timing/common_type.hpp: Same.
* testsuite/util/performance/assoc/timing/multimap_insert_test.hpp: Same.
* testsuite/util/performance/assoc/timing/subscript_find_test.hpp: Same.
* testsuite/util/performance/assoc/timing/find_test.hpp: Same.
* testsuite/util/performance/assoc/timing/subscript_insert_test.hpp: Same.
* testsuite/util/performance/assoc/timing/insert_test.hpp: Same.
* testsuite/util/performance/assoc/timing/tree_order_statistics_test.hpp: Same.
* testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
* testsuite/util/performance/assoc/timing/tree_split_join_test.hpp: Same.
* testsuite/util/performance/time: New.
* testsuite/util/performance/time/elapsed_timer.cc: Same.
* testsuite/util/performance/time/elapsed_timer.hpp: Same.
* testsuite/util/performance/time/timing_test_base.hpp: Same.
* testsuite/util/performance/mem: New.
* testsuite/util/performance/mem/mem_track_allocator_base.hpp: Same.
* testsuite/util/performance/mem/mem_track_allocator.hpp: Same.
* testsuite/util/hash_fn: New.
* testsuite/util/hash_fn/limit_string_hash_fn.hpp: Same.
* testsuite/util/hash_fn/string_ranged_hash_fn.hpp: Same.
* testsuite/util/hash_fn/string_hash_fn.hpp: Same.
* testsuite/util/hash_fn/string_ranged_probe_fn.hpp: Same.
* testsuite/util/hash_fn/dna_str_limit.hpp: Same.
* testsuite/util/io: New.
* testsuite/util/io/prog_bar.cc: Same.
* testsuite/util/io/prog_bar.hpp: Same.
* testsuite/util/io/text_populate.hpp: Same.
* testsuite/util/io/xml.hpp: Same.
* testsuite/util/io/illegal_input_error.hpp: Same.
* testsuite/util/io/xml_test_formatter.hpp: Same.
* testsuite/util/io/verified_cmd_line_input.cc: Same.
* testsuite/util/io/verified_cmd_line_input.hpp: Same.
* testsuite/util/statistic: New.
* testsuite/util/statistic/sample_var.hpp: Same.
* testsuite/util/statistic/res_recorder.hpp: Same.
* testsuite/util/statistic/sample_mean.hpp: Same.
* testsuite/util/statistic/sample_mean_confidence_checker.hpp: Same.
2006-06-12 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26970
* config/locale/gnu/c_locale.h (__convert_from_v<>): Change to
variadic function, instead of template function.
* config/locale/generic/c_locale.h (__convert_from_v<>): Likewise.
* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
Adjust.
(money_put<>::do_put(long double)): Likewise.
* src/locale-misc-inst.cc: Remove.
* src/Makefile.am: Adjust.
* src/Makefile.in: Regenerate.
2006-06-09 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (random_device::random_device(const
std::string& = "/dev/urandom")): Open in binary mode.
* include/tr1/random (random_device::random_device(const
std::string& = "rand")): Use mersenne_twister.
(random_device::_M_strtoul): New.
(random_device::operator()()): Update.
* include/tr1/random: Minor stylistic changes, consistently
qualify with std::.
2006-06-09 Paolo Carlini <pcarlini@suse.de>
* acinclude.m4 ([GLIBCXX_CHECK_RANDOM_TR1]): New, check for
the availability of "/dev/random" and "/dev/urandom".
* configure.ac: Use it.
* include/tr1/random (random_device): Implement, a fall-back for
systems not providing "/dev/random" and "/dev/urandom" included.
* testsuite/tr1/5_numerical_facilities/random/random_device/
cons/default.cc: New.
* testsuite/tr1/5_numerical_facilities/random/random_device/
cons/token.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/random_device/
requirements/typedefs.cc: Likewise.
* config.h.in: Regenerate.
* configure: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
cons/gen1.cc: Minor tweak, add bool test.
2006-06-06 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util: New directory.
* testsuite/testsuite_hooks.cc: Move to util sub-directory.
* testsuite/testsuite_abi_check.cc: Same.
* testsuite/testsuite_abi.cc: Same.
* testsuite/testsuite_tr1.h: Same.
* testsuite/testsuite_io.h: Same.
* testsuite/testsuite_iterators.h: Same.
* testsuite/testsuite_allocator.cc: Same.
* testsuite/testsuite_allocator.h: Same.
* testsuite/testsuite_hooks.h: Same.
* testsuite/testsuite_character.cc: Same.
* testsuite/testsuite_abi.h: Same.
* testsuite/testsuite_character.h: Same.
* testsuite/testsuite_visualization.h: Same.
* testsuite/testsuite_performance.h: Same.
* testsuite/testsuite_shared.cc: Same.
* testsuite/testsuite_common_types.h: Same.
* testsuite/lib/libstdc++.exp (v3-build_support): Adjust paths.
* testsuite/libstdc++-abi/abi.exp: Same.
* testsuite/libstdc++-dg/conformance.exp: Remove any files in the
utilities subdirectory from the list of test cases.
* scripts/testsuite_flags.in (build-includes): Adjust path for
testsuite includes.
* scripts/create_testsuite_files (dlist): Don't let utility files
creep into the testsuite_files list.
2006-06-06 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (mersenne_twister<>::operator==,
operator!=, operator<<, operator>>): Implement.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
operators/equal.cc: New.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
operators/serialize.cc: Likewise.
* include/tr1/random (subtract_with_carry<>::operator==): Fix,
compare the whole state; use std::equal.
* include/tr1/random: Minor formatting and style changes.
2006-06-06 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/tr1/5_numerical_facilies: Move to...
* testsuite/tr1/5_numerical_facilities: ...this.
2006-06-06 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random: Trivial uglification fixes.
* include/tr1/random.tcc: Likewise.
* include/tr1/random (subtract_with_carry<>::
subtract_with_carry(_IntType)): Fix parameter type to unsigned long.
(subtract_with_carry<>::seed(_IntType)): Likewise.
* include/tr1/random.tcc (subtract_with_carry<>::seed(_IntType)):
Adjust.
2006-06-05 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random (mersenne_twister<>::seed()): Fix per
tr1/5.1.4.2, p8.
* include/tr1/random.tcc (mod_w): Add.
(mersenne_twister<>::seed(unsigned long)): Fix per tr1/5.1.4.2, p9.
(mersenne_twister<>::seed(Gen&, false_type)): Adjust to use mod_w.
* testsuite/tr1/5_numerical_facilies/random/mt19937.cc: Fix
expected result per tr1/5.1.5, p2.
* testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
cons/default.cc: Adjust.
* include/tr1/random (exponential_distribution<>::operator()()): Fix.
2006-06-05 Paolo Carlini <pcarlini@suse.de>
* include/tr1/random.tcc (Max::value()): Cast 1 to Tp(1) and
adjust shift count to w; rename as Max_w.
(struct Mod_w): New.
(mersenne_twister<>::seed(Gen&, false_type): Use the latter.
(mersenne_twister<>::operator()()): Fix ~0ul to ~_UInt().
* testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
cons/default.cc: Fix ~0ul to 2^32-1.
* testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
cons/gen1.cc: Likewise.
2006-06-05 Stephen M. Webb <stephen.webb@bregmasoft.com>
* include/tr1/random: New.
* include/tr1/random.tcc: Likewise.
* include/Makefile.am: Add.
* testsuite/tr1/5_numerical_facilies/random/ranlux3.cc: New.
* testsuite/tr1/5_numerical_facilies/random/ranlux4.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/mt19937.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/variate_generator/
requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
cons/seed1.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
cons/seed2.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
operators/serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/uniform_real/
requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/discard_block/
requirements/requirements.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
cons/seed1.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
cons/seed2.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
requirements/non_uint_neg.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/linear_congruential/
operators/serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/xor_combine/
requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/minstd_rand.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/minstd_rand0.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/uniform_int/
cons/range.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/uniform_int/
cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/uniform_int/
cons/range_neg.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/uniform_int/
requirements/typedefs.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
cons/seed1.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
cons/seed2.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
requirements/typedefs.cc: Likewise.
* include/Makefile.in: Regenerate.
* testsuite/tr1/headers.cc: Update.
2006-06-04 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/27867
* include/bits/valarray_before.h (struct _BinClos<_Oper, _ValArray,
_ValArray, _Tp, _Tp>): Fix value_type typedef.
* testsuite/26_numerics/valarray/27867.cc: New.
2006-05-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/24692
* include/bits/atomicity.h (__exchange_and_add_multi,
__atomic_add_multi): New, depending on _GLIBCXX_ATOMIC_BUILTINS,
inline the atomic builtins.
(__exchange_and_add_dispatch, __atomic_add_dispatch): Adjust.
* configure.ac: Define _GLIBCXX_ATOMIC_BUILTINS when the atomic
builtins are available.
* configure: Regenerate.
* config.h.in: Likewise.
2006-05-27 Paolo Carlini <pcarlini@suse.de>
* configure.host: If the CPU provides atomic builtins select
generic/atomic_builtins/atomicity.h.
* config/cpu/generic/atomic_builtins/atomicity.h: Add.
* config/cpu/powerpc/atomicity.h: Remove.
* config/cpu/ia64/atomicity.h: Likewise.
* config/cpu/alpha/atomicity.h: Likewise.
* config/cpu/s390/atomicity.h: Likewise.
2006-05-26 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html target. Add install-html to .PHONY
* Makefile.in: Regenerate.
2006-05-24 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/24704
* include/bits/atomicity.h (__exchange_and_add_single,
__atomic_add_single): New, single thread versions of the atomic
functions.
(__exchange_and_add_dispatch, __atomic_add_dispatch): New,
depending on __GTHREADS and __gthread_active_p() dispatch either
to the above or to the existing atomic functions.
* include/ext/pool_allocator.h: Update callers.
* include/ext/rc_string_base.h: Likewise.
* include/bits/locale_classes.h: Likewise.
* include/bits/basic_string.h: Likewise.
* include/bits/ios_base.h: Likewise.
* include/tr1/boost_shared_ptr.h: Likewise.
* src/ios.cc: Likewise.
* src/locale.cc: Likewise.
* src/ios_init.cc: Likewise.
2006-05-23 Paolo Carlini <pcarlini@suse.de>
* testsuite/testsuite_shared.cc: Fix --enable-threads=single build.
2006-05-19 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/objects/wchar_t/9661-1.cc: Avoid leaking the
semaphores if a VERIFY fails.
* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
* testsuite/27_io/objects/char/9661-1.cc: Likewise.
* testsuite/27_io/objects/char/7.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
2006-05-17 Paolo Carlini <pcarlini@suse.de>
* include/tr1/hashtable (hashtable<>::m_find): Remove; update callers.
* include/tr1/hashtable (map_base<>::operator[]): Move out of line.
* include/tr1/hashtable (hashtable<>::m_insert(const value_type&,
std::tr1::false_type)): Avoid memory leak risk for new_node.
2006-05-15 Paolo Carlini <pcarlini@suse.de>
* include/tr1/hashtable (hashtable<>::m_find, m_insert_bucket): Add.
(hashtable<>::find, m_insert(const value_type&, std::tr1::true_type),
map_base<>::operator[]): Use the above.
* testsuite/performance/23_containers/insert/unordered_map_array.cc:
New.
* include/tr1/hashtable (hashtable<>::find_node,
insert(const value_type&, ...), erase_node): Rename to m_*, adjust
callers.
* include/tr1/hashtable: Minor cosmetic changes.
2006-05-13 Peter Doerfler <gcc@pdoerfler.com>
* include/tr1/hashtable (identity<>::operator(),
extract1st<>::operator()): Return by const ref.
2006-05-10 Steve Ellcey <sje@cup.hp.com>
* testsuite/lib/libstdc++.exp (check_v3_target_cxa_atexit):
Move to gcc subdir.
* testsuite/lib/dg-options.exp (dg-require-iconv): Remove.
(dg-require-cxa-atexit): Move to gcc subdir.
2006-05-10 Paolo Carlini <pcarlini@suse.de>
Peter Doerfler <gcc@pdoerfler.com>
* include/tr1/hashtable (hashtable_iterator<>::hashtable_iterator(),
hashtable_const_iterator<>::hashtable_const_iterator(),
node_iterator<>::node_iterator(),
node_const_iterator<>::node_const_iterator()): Add.
(node_iterator<>::node_iterator(hash_node<>*),
node_const_iterator<>::node_const_iterator(hash_node<>*)): Tweak,
remove default.
* testsuite/tr1/6_containers/unordered/hashtable/
iterators_default_constructor.c: New.
2006-05-10 Marc Glisse <marc.glisse@normalesup.org>
* include/ext/pool_allocator.h: Add missing std:: qualifications.
* include/ext/mt_allocator.h: Likewise.
* include/ext/pb_assoc/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Likewise.
* include/ext/pb_assoc/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Likewise.
* include/ext/pb_assoc/detail/lu_policy/
counter_lu_metadata_imp.hpp: Likewise.
* include/ext/pb_assoc/detail/map_debug_base.hpp: Likewise.
* libsupc++/eh_alloc.cc: Typo: memcpy -> memset.
2006-05-07 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (integral_constant<>::value): Define.
* testsuite/tr1/4_metaprogramming/helper_classes/static_definition.cc:
New.
2006-05-04 Douglas Gregor <dgregor@cs.indiana.edu>
PR libstdc++/27404
* include/ext/rope (_Rope_const_iterator<>::operator*() const,
_Rope_iterator<>::operator*() const): Add.
2006-05-01 Paolo Carlini <pcarlini@suse.de>
* acinclude.m4 (GLIBCXX_ENABLE_WCHAR_T): Always check the
presence of wctype.h, for use in GLIBCXX_ENABLE_C99.
* configure: Regenerate.
2006-04-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
Special case main parsing loop for !_M_allocated (i.e., "C" locale).
(num_get<>::_M_extract_int): Likewise.
* include/bits/locale_facets.h (num_get<>::_M_find): New.
2006-04-27 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/17_intro/TODO: Update.
2006-04-26 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/26875
* include/ext/array_allocator.h (array_allocator): _M_used, new
data member.
* testsuite/ext/array_allocator/26875.cc: New.
2006-04-26 Shantonu Sen <ssen@opendarwin.org>
PR libstdc++/26513
* scripts/make_exports.pl: Use $ENV{NM_FOR_TARGET}, if present.
2006-04-23 Marc Glisse <marc.glisse@normalesup.org>
PR libstdc++/27199
* ext/pool_allocator.h: Add using declarations for size_t, ptrdiff_t.
* ext/bitmap_allocator.h: Likewise; qualify with std::.
* ext/new_allocator.h: Likewise.
* ext/malloc_allocator.h: Likewise.
* ext/array_allocator.h: Likewise.
* ext/mt_allocator.h: Likewise.
* ext/functional: Likewise for size_t.
* ext/debug_allocator.h: Likewise.
* bits/char_traits.h: Qualify with std:: size_t.
* debug/hash_multimap.h: Likewise.
2006-04-23 Paolo Carlini <pcarlini@suse.de>
* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 42.
2006-04-19 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26424
* include/tr1/hashtable (X<>::primes): Extend for 64-bit machines.
(X<>::n_primes): Adjust.
(prime_rehash_policy::next_bkt, bkt_for_elements, need_rehash): Adjust.
2006-04-18 Paolo Carlini <pcarlini@suse.de>
* docs/html/faq/index.html ([5.5]): Adjust to mention function
objects and reference_wrapper; minor tweaks.
* docs/html/faq/index.txt: Regenerate.
2006-04-16 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/6702 (again)
* acinclude.m4 (GLIBCXX_ENABLE_C99): Don't check non-C99
wchar_t functions...
(GLIBCXX_ENABLE_WCHAR_T): ... do that here.
* configure.ac: Adjust order of checks.
* configure: Regenerate.
2006-04-14 Douglas Gregor <dgregor@cs.indiana.edu>
PR libstdc++/27162
* include/bits/stl_algo.h (__search_n(,,,, _BinaryPredicate,
std::forward_iterator_tag)): Use __binary_pred, not ==.
2006-04-10 Matthias Klose <doko@debian.org>
* testsuite/lib/libstdc++.exp (libstdc++_init): Recognize multilib
directory names containing underscores.
2006-04-10 Paolo Carlini <pcarlini@suse.de>
DR 538, [Ready]
* include/bits/stl_algo.h (__unique_copy(,,, input_iterator_tag,
output_iterator_tag), and predicated counterpart): Revert to the
algorithm pre-DR 241, i.e., value_type of InputIterator is now
required to be Assignable too.
* testsuite/25_algorithms/unique_copy/3.cc: Remove.
* docs/html/ext/howto.html: Add an entry for DR 538.
2006-03-29 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/data/sgetn.txt: Correct copyright holder.
* testsuite/data/wistream_extractor_other-1.tst: Same.
* testsuite/data/wistream_extractor_other-2.tst: Same.
* testsuite/data/istream_extractor_other-1.txt: Same.
* testsuite/data/filebuf_virtuals-1.txt: Same.
* testsuite/data/wostream_inserter_other-1.tst: Same.
* testsuite/data/wostream_inserter_other-2.tst: Same.
* testsuite/data/ostream_inserter_other-1.tst: Same.
* testsuite/data/ostream_inserter_other-2.tst: Same.
* testsuite/data/wistream_extractor_other-1.txt: Same.
* testsuite/data/istream_extractor_other-1.tst: Same.
* testsuite/data/istream_extractor_other-2.tst: Same.
* testsuite/data/filebuf_virtuals-1.tst: Same.
* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Adjust test
conditions.
* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Same.
* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Same.
* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Same.
2006-03-28 Paolo Carlini <pcarlini@suse.de>
* include/ext/vstring.h (operator[]): Allow s[s.size()] in
debug mode, but not pedantic mode.
2006-03-24 Mark Mitchell <mark@codesourcery.com>
Joseph S. Myers <joseph@codesourcery.com>
PR libstdc++/20448
PR libstdc++/20451
* scripts/testsuite_flags.in (--cxxflags): Don't define LOCALEDIR.
* testsuite/lib/libstdc++.exp (libstdc++_init): Always define
LOCALEDIR to ".".
(v3-build_support): Build MO files.
2006-03-22 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26777
* include/bits/fstream.tcc (basic_filebuf<>::_M_seek): Check
the return value of _M_file.seekoff.
* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: New.
2006-03-21 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/25482
* include/bits/stl_algobase.h (__copy_aux(_CharT*, _CharT*,
ostreambuf_iterator<_CharT>), __copy_aux(const _CharT*, const _CharT*,
ostreambuf_iterator<_CharT>), __copy_aux(istreambuf_iterator<_CharT>,
istreambuf_iterator<_CharT>, _CharT*), copy(istreambuf_iterator<_CharT>,
istreambuf_iterator<_CharT>, ostreambuf_iterator<_CharT>)): Declare.
* include/bits/stl_algo.h (find(istreambuf_iterator<_CharT>,
istreambuf_iterator<_CharT>, _CharT)): Likewise.
* include/bits/streambuf_iterator.h (copy(istreambuf_iterator<_CharT>,
istreambuf_iterator<_CharT>, ostreambuf_iterator<_CharT>),
__copy_aux(_CharT*, _CharT*, ostreambuf_iterator<_CharT>),
__copy_aux(const _CharT*, const _CharT*, ostreambuf_iterator<_CharT>),
__copy_aux(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
_CharT*), find(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
_CharT)): Define.
(class istreambuf_iterator<>, class ostreambuf_iterator<>): Declare
friends.
* include/std/std_streambuf.h (class basic_streambuf<>): Likewise.
* include/bits/cpp_type_traits.h (struct __is_char<>): Add.
* testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc: New.
* testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: New.
* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: New.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc: New.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc: New.
* testsuite/performance/25_algorithms/copy_streambuf_iterators.cc: New.
* testsuite/performance/25_algorithms/find_istreambuf_iterators.cc: New.
006-03-13 Paolo Carlini <pcarlini@suse.de>
* include/bits/postypes.h (fpos<>::operator==, operator!=): Remove,
exploit conversion to streamoff.
* testsuite/27_io/fpos/mbstate_t/5.cc: New.
2006-03-12 Howard Hinnant <hhinnant@apple.com>
* testsuite/27_io/basic_filebuf/underflow/char/10097.cc:
Fix race condition.
* testsuite/27_io/objects/char/9661-1.cc: Likewise.
* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
2006-03-10 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cmath: Add atan2 and pow bits; add using declarations.
* include/tr1/math.h: Add using declarations.
* include/tr1/complex: Add using declarations.
* testsuite/tr1/8_c_compatibility/cmath/functions.cc: Fully
qualify calls.
* testsuite/tr1/8_c_compatibility/cmath/overloads.cc: Likewise;
add atan2 and pow bits.
* testsuite/tr1/8_c_compatibility/complex/overloads_float.cc: Likewise.
* testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise;
adjust polar bits.
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add checks for double_t
and float_t typedefs.
* include/tr1/cmath: Add double_t and float_t.
* testsuite/tr1/8_c_compatibility/cmath/types.cc: New.
* include/tr1/ctgmath: New.
* include/tr1/tgmath.h: Likewise.
* include/Makefile.am: Add.
* testsuite/tr1/headers.cc: Update.
* include/Makefile.in: Regenerate.
* configure: Likewise.
* docs/html/ext/tr1.html: Update.
2006-03-08 Paolo Carlini <pcarlini@suse.de>
Implement the resolution of DR 455, [DR].
* src/ios_init.cc (ios_base::Init::Init()): Do it.
* testsuite/27_io/objects/char/dr455.cc: New.
* testsuite/27_io/objects/wchar_t/dr455.cc: Likewise.
* docs/html/ext/howto.html: Add an entry for DR 455.
2006-03-07 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cmath: Add C99 overloads.
* include/tr1/common.h (struct __promote_3): Add.
* testsuite/tr1/8_c_compatibility/cmath/overloads.cc: New.
* testsuite/tr1/8_c_compatibility/cmath/functions.cc: Tweak.
* testsuite/tr1/8_c_compatibility/complex/overloads_float.cc: Likewise.
2006-03-06 Paolo Carlini <pcarlini@suse.de>
PR target/26532
* config/io/c_io_stdio.h (struct __ios_flags): Remove.
* include/bits/ios_base.h: Adjust consistently.
(ios_base::_S_local_word_size): Change to an anonymous enum.
* src/ios.cc: Do not define static const data of __ios_flags,
likewise for ios_base::_S_local_word_size.
* include/bits/locale_classes.h (locale::_S_categories_size):
Change to an anonymous enum.
* src/locale.cc: Don't define.
2006-03-03 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26526
* config/abi/pre/gnu.ver (__copy_streambufs, 64-bit version): Add
@GLIBCXX_3.4.8; move existing symbols @GLIBCXX_3.4.8 to 3.4.9.
* configure.ac (libtool_VERSION): To 6:9:0.
* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.9.
* configure: Regenerate.
2006-03-02 Paolo Carlini <pcarlini@suse.de>
* config/abi/pre/gnu.ver: Adjust __copy_streambufs_eof export
vs 64-bit arches.
2006-03-01 Paolo Carlini <pcarlini@suse.de>
* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 41.
2006-02-27 Jakub Jelinek <jakub@redhat.com>
PR other/26208
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
_Unwind_GetIPInfo instead of _Unwind_GetIP.
2006-02-27 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/14866
* testsuite/27_io/ios_base/sync_with_stdio/1.cc: Redirect
stderr instead.
2006-02-26 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cmath: Add templates (8.16.3).
* include/tr1/cstdbool: New.
* include/tr1/stdbool.h: Likewise.
* include/Makefile.am: Add.
* testsuite/tr1/8_c_compatibility/cmath/templates.cc: New.
* testsuite/tr1/headers.cc: Update.
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <stdbool.h> check.
* docs/html/ext/tr1.html: Update.
* include/Makefile.in: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
2006-02-24 Paolo Carlini <pcarlini@suse.de>
* include/tr1/array (array<>::swap, assign): Implement.
* include/tr1/array (operator==, operator!=, operator<,
operator>, operator>=, operator<=, swap, get): Inline.
* testsuite/tr1/6_containers/array/requirements/member_swap.cc: New.
* testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
* testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
Likewise.
2006-02-23 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/codecvt/in/wchar_t/1.cc (test01): Change int
to size_t. Use explicit static_cast for casts.
* testsuite/22_locale/codecvt/in/wchar_t/6.cc (test06): Same.
* testsuite/22_locale/codecvt/in/wchar_t/5.cc (test05): Same.
* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc (test01): Same.
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.
* testsuite/tr1/4_metaprogramming/type_properties/extent/extent.cc
(test01)
2006-02-05 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cstdio: New.
* include/tr1/stdio.h: Likewise.
* include/Makefile.am: Add.
* testsuite/tr1/8_c_compatibility/cstdio/functions.cc: New.
* testsuite/tr1/headers.cc: Update.
* docs/html/ext/tr1.html: Update.
* include/tr1/cwchar: Simplify, use _GLIBCXX_USE_C99, consistently
with the facilities in std::.
* include/tr1/cwctype: Likewise.
* testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Tweak.
* testsuite/tr1/8_c_compatibility/cwctype/functions.cc: Likewise.
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Remove <wchar.h> and
<wctype.h> checks.
* include/Makefile.in: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
2006-02-04 Paolo Carlini <pcarlini@suse.de>
* testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Fix.
2006-02-04 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_stringbuf/in_avail/char/21955.cc: Avoid
warning on string constant.
2006-02-03 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cwchar: New.
* include/tr1/cwctype: Likewise.
* include/tr1/wchar.h: Likewise.
* include/tr1/wctype.h: Likewise.
* include/Makefile.am: Add.
* testsuite/tr1/8_c_compatibility/cwchar/functions.cc: New.
* testsuite/tr1/8_c_compatibility/cwctype/functions.cc: Likewise.
* testsuite/tr1/headers.cc: Update.
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <wchar.h> and
<wctype.h> checks.
* docs/html/ext/tr1.html: Update.
* include/Makefile.in: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
* testsuite/tr1/8_c_compatibility/cctype/functions.cc: Cosmetic tweak.
2006-02-02 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cfloat: New.
* include/tr1/climits: Likewise.
* include/tr1/cstdarg: Likewise.
* include/tr1/ctype.h: Likewise.
* include/tr1/fenv.h: Likewise.
* include/tr1/float.h: Likewise.
* include/tr1/inttypes.h: Likewise.
* include/tr1/limits.h: Likewise.
* include/tr1/stdint.h: Likewise.
* include/tr1/stdarg.h: Likewise.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* docs/html/ext/tr1.html: Update.
* testsuite/tr1/headers.cc: New.
* include/tr1/cctype: Include <cctype> instead.
2006-01-31 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/21554
* include/tr1/array (array<>::_M_instance): Maximally align.
* testsuite/ext/array_allocator/2.cc: Do not xfail for powerpc.
2006-01-31 Ed Smith-Rowland <3dw4rd@verizon.net>
* docs/html/faq/index.html ([1.0]): Replace references to CVS
with appropriate references to SVN.
([1.3]): Likewise.
([1.4]): Likewise.
([2.3]): Likewise.
* docs/html/faq/index.txt: Regenerated.
2006-01-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
* include/bits/valarray_array.h (__valarray_default_construct):
Replace use __is_fundamental with __is_pod.
(__valarray_fill_construct): Likewise.
(__valarray_copy_construct): Likewise.
(__valarray_destroy_elements): Likewise.
(__valarray_copy): Likewise.
2006-01-30 Paolo Carlini <pcarlini@suse.de>
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Do the <inttypes.h>
checks only if the <stdint.h> checks are successful.
* configure: Regenerate.
2006-01-30 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cinttypes: New.
* include/Makefile.am: Add.
* testsuite/tr1/8_c_compatibility/cinttypes/functions: New.
* testsuite/tr1/8_c_compatibility/cinttypes/types: Likewise.
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <inttypes.h> checks.
* docs/html/ext/tr1.html: Update.
* include/Makefile.in: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
* testsuite/tr1/8_c_compatibility/cfenv/functions.cc: Cosmetic tweak.
* testsuite/tr1/8_c_compatibility/cfenv/types.cc: Likewise.
* testsuite/tr1/8_c_compatibility/cstdint/types.cc: Fix, check in
std::tr1.
2006-01-29 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cstdint: New.
* include/Makefile.am: Add.
* testsuite/tr1/8_c_compatibility/cstdint/types: New.
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <stdint.h> checks.
* docs/html/ext/tr1.html: Update.
* include/Makefile.in: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
* testsuite/tr1/8_c_compatibility/cfenv/types.cc: Cosmetic tweak.
2006-01-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26006
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Tighten <ctype.h> and
<fenv.h> checks.
* configure: Regenerate.
2006-01-26 Paolo Carlini <pcarlini@suse.de>
* include/std/std_bitset.h (bitset<>::_M_copy_to_string):
Call the internal _Unchecked_set(size_t) instead of set.
2006-01-26 Paolo Carlini <pcarlini@suse.de>
* docs/html/install.html ([Tools you will need beforehand]):
Clarify that the de_DE locale is used by configure; clarify
that missing localedata leads to skipped tests, not fails.
2006-01-26 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cfenv: New.
* include/Makefile.am: Add.
* testsuite/tr1/8_c_compatibility/cfenv/functions.cc: New.
* testsuite/tr1/8_c_compatibility/cfenv/types.cc: Likewise.
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <fenv.h> checks.
* docs/html/ext/tr1.html: Update; add note.
* include/Makefile.in: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
* testsuite/tr1/8_c_compatibility/complex/functions.cc: Tweak.
* testsuite/tr1/8_c_compatibility/cctype/functions.cc: Likewise.
* docs/html/faq/index.html: Fix link to tr1.html text; fix
formatting.
2006-01-25 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cctype: New.
* include/Makefile.am: Add.
* testsuite/tr1/8_c_compatibility/cctype/functions.cc: New.
* include/Makefile.in: Regenerate.
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): New, check for C99
support to TR1, Chapter 8.
* configure.ac: Use it.
* include/tr1/complex: Adjust.
* config.h.in: Regenerate.
* configure: Likewise.
2006-01-25 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/configopts.html: Tweak docs.
* libsupc++/eh_personality.cc: Fix typos.
2006-01-24 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/25649
* include/std/std_istream.h (operator>>(short&), operator>>(int&)):
Move out of line...
* include/bits/istream.tcc: ... here.
* include/std/std_ostream.h (operator<<(short), operator<<(int)):
Move out of line...
* include/bits/ostream.tcc: ... here.
2006-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
* docs/html/faq/index.html ([5.2]): Mention TR1 and point to
paragraph [5.5], describing it.
([5.5]): New.
* docs/html/ext/tr1.html: New.
2006-01-20 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version
reporting. Disable --gc-sections for old binutils, by version.
* configure: Regenerate.
2006-01-20 Joseph S. Myers <joseph@codesourcery.com>
PR libstdc++/25524
* include/Makefile.am: Install host-specific headers in multilib
subdirectory.
* include/Makefile.in: Regenerate.
2006-01-19 Paolo Carlini <pcarlini@suse.de>
Implement list::splice (and merge) bits of N1599
* include/bits/stl_list.h (list<>::_M_check_equal_allocators): New.
(list<>::splice(iterator, list&), splice(iterator, list&, iterator),
splice(iterator, list&, iterator, iterator)): Use it.
* include/bits/list.tcc (list<>::merge(list&), merge(list&,
_StrictWeakOrdering)): Likewise.
* testsuite/23_containers/list/operators/5.cc: New.
2006-01-19 H.J. Lu <hongjiu.lu@intel.com>
PR libstdc++/25797
* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Remove -Werror
from CFLAGS. Check if linker really supports --gc-sections.
* configure: Regenerated.
2006-01-18 Paul Brook <paul@codesourcery.com>
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Use std::abort.
2006-01-18 Paolo Carlini <pcarlini@suse.de>
* include/bits/allocator.h: Include <bits/cpp_type_traits.h>.
2006-01-18 Perry Smith <pedz@easesoftware.net>
PR libstdc++/25823
PR libstdc++/25824
* libsupc++/eh_alloc.cc: Fix return type of memset declaration.
* libsupc++/eh_globals.cc: If !_GLIBCXX_HOSTED declare malloc and free.
2006-01-18 Paolo Carlini <pcarlini@suse.de>
* include/ext/pb_assoc/detail/value_type_adapter/
value_type_adapter.hpp: Include <tr1/type_traits>.
* include/ext/pb_assoc/detail/value_type_adapter/
it_value_type_traits.hpp (it_value_type_traits_<>::value_type_holder):
Use tr1::aligned_storage and tr1::alignment_of.
(it_value_type_traits_<>::buf_t): Remove.
(it_value_type_traits_<>::make_valid, recast): Adjust.
2006-01-16 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/25797
* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Add -Werror to
CFLAGS for --gc-sections test. Correct compile test.
* configure: Regenerated.
2006-01-15 Paolo Carlini <pcarlini@suse.de>
Gabriel Dos Reis <gdr@integrable-solutions.net>
PR libstdc++/25626
* include/std/std_valarray.h (valarray(const slice_array<>&),
valarray(const gslice_array<>&), valarray(const mask_array<>&),
valarray(const indirect_array<>&), valarray(const _Expr<>&)):
Forward to __valarray_copy_construct, not __valarray_copy.
* include/bits/valarray_array.h
(__valarray_copy_construct(_Array<>, _Array<>, _Array<>, size_t),
__valarray_copy_construct(_Array<>, size_t, size_t, _Array<>)):
New.
2006-01-15 Paolo Carlini <pcarlini@suse.de>
* testsuite/tr1/8_c_compatibility/complex/overloads_int.cc:
Fix norm test, use casts everywhere.
2006-01-14 Paolo Carlini <pcarlini@suse.de>
* testsuite/testsuite_tr1.h: Add missing include; use std::__are_same.
2006-01-14 Paolo Carlini <pcarlini@suse.de>
* testsuite/tr1/8_c_compatibility/complex/overloads_int.cc:
Fix wrong test (don't pick by mistake the (const complex<>&, int)
overload); add some.
2006-01-13 Paolo Carlini <pcarlini@suse.de>
Howard Hinnant <hhinnant@apple.com>
* include/tr1/complex (arg, conj, imag, norm, polar, pow, real):
Add, implementing TR1, 8.1.9.
(__promote_2): New.
* include/tr1/common.h: New, provides __promote, __promote_2.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* testsuite/testsuite_tr1.h (check_ret_type): New.
* testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: New.
* testsuite/tr1/8_c_compatibility/complex/overloads_float.cc: New.
2006-01-12 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4(GLIBCXX_CHECK_LINKER_FEATURES): Enable
--gc-sections in more cases.
* configure: Regenerate.
* scripts/testsuite_flags.in: Remove SECTION_LDFLAGS.
* scripts/testsuite_flags.in (cxxldflags): New.
* testsuite/lib/libstdc++.exp (v3_target_compile): Add cxxldflags.
(libstdc++_init ): Same.
2006-01-12 Jan Beulich <jbeulich@novell.com>
* crossconfig.m4: Add AC_DEFINE-s for HAVE_HYPOT, HAVE_ISINF, and
HAVE_ISNAN for *-*-netware*.
* configure: Refresh.
2006-01-11 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4(GLIBCXX_CHECK_LINKER_FEATURES): Use -Wl,-z,relro if
possible.
* configure: Regenerate.
2006-01-10 Paolo Carlini <pcarlini@suse.de>
* include/tr1/complex: New file, hosts the additions to header
<complex> described in TR1, Chapter 8 [tr.c99].
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* testsuite/tr1/8_c_compatibility/complex/functions.cc: New.
2006-01-09 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/25658
* testsuite/23_containers/deque/cons/assign/1.cc: Divide
sizes by 10.
2006-01-08 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/22102 (insert as close to hint as possible)
* include/bits/stl_tree.h (_Rb_tree<>::_M_insert_lower,
_M_insert_equal_lower): New.
(_M_insert_equal(iterator, const _Val&),
_M_insert_equal(const_iterator, const _Val&)): Use the above.
* docs/html/ext/howto.html: Add an entry for DR 233.
* testsuite/23_containers/multiset/modifiers/insert/22102.cc: New.
* testsuite/23_containers/multimap/modifiers/insert/22102.cc: New.
* testsuite/23_containers/set/insert/: Move...
* testsuite/23_containers/set/modifiers/insert/: ...here.
* testsuite/23_containers/map/insert/: Move...
* testsuite/23_containers/map/modifiers/insert/: ...here.
* testsuite/23_containers/multiset/insert/: Move...
* testsuite/23_containers/multiset/modifiers/insert/: ...here.
2006-01-06 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_tree.h (_Rb_tree<>::insert_unique): Rename
to _M_insert_unique.
(_Rb_tree<>::insert_equal): Rename to _M_insert_equal.
* include/bits/stl_map.h (class map<>): Update callers.
* include/bits/stl_set.h (class set<>): Likewise.
* include/bits/stl_multimap.h (class multimap<>): Likewise.
* include/bits/stl_multiset.h (class multiset<>): Likewise.
2006-01-06 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_bvector.h (vector<bool>::erase(iterator,
iterator)): Just use _M_erase_at_end.
2006-01-06 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_bvector.h (class vector<bool>): Move all the
helpers under protected access mode, consistently with the primary
vector template.
(vector<bool>::_M_erase_at_end): Add.
(erase(iterator, iterator), clear, resize, _M_fill_assign,
_M_assign_aux): Use it.
* testsuite/23_containers/vector/bool/modifiers/erase/1.cc: New.
2006-01-06 Paolo Carlini <pcarlini@suse.de>
Implement Option 3 of DR 431 for vector<bool>.
* include/bits/stl_bvector.h (class _Bvector_base): Change to
a struct, consistently with the primary vector template.
(class vector<bool>): Adjust to protected inheritance, tidy
typedefs.
(_Bvector_base<>::_M_get_Bit_allocator): Add.
(vector<bool>::vector(const vector&)): Use it.
(_Bvector_base<>::get_allocator): Tidy.
(vector<bool>::swap): Use __alloc_swap.
* testsuite/23_containers/vector/bool/modifiers/swap/1.cc: New.
* testsuite/23_containers/vector/bool/modifiers/swap/2.cc: New.
2006-01-05 Paolo Carlini <pcarlini@suse.de>
* testsuite/testsuite_hooks.h (test_tm(unsigned)): Change to
take all the tm members.
* testsuite/testsuite_hooks.cc (test_tm): Adjust.
* testsuite/22_locale/time_put/put/wchar_t/10.cc: Update.
* testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
* testsuite/22_locale/time_put/put/char/10.cc: Likewise.
* testsuite/22_locale/time_put/put/char/1.cc: Likewise.
* testsuite/22_locale/time_put/put/char/2.cc: Likewise.
* testsuite/22_locale/time_put/put/char/3.cc: Likewise.
* testsuite/22_locale/time_put/put/char/4.cc: Likewise.
* testsuite/22_locale/time_put/put/char/5.cc: Likewise.
* testsuite/22_locale/time_put/put/char/6.cc: Likewise.
* testsuite/22_locale/time_put/put/char/7.cc: Likewise.
* testsuite/22_locale/time_put/put/char/8.cc: Likewise.
* testsuite/22_locale/time_put/put/char/9.cc: Likewise.
* testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
2006-01-05 Paolo Carlini <pcarlini@suse.de>
* testsuite/testsuite_hooks.h (test_tm(unsigned)): New.
* testsuite/testsuite_hooks.cc (test_tm(unsigned)): Define.
* testsuite/22_locale/time_put/put/wchar_t/10.cc: Use it.
* testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
* testsuite/22_locale/time_put/put/char/10.cc: Likewise.
* testsuite/22_locale/time_put/put/char/1.cc: Likewise.
* testsuite/22_locale/time_put/put/char/2.cc: Likewise.
* testsuite/22_locale/time_put/put/char/3.cc: Likewise.
* testsuite/22_locale/time_put/put/char/4.cc: Likewise.
* testsuite/22_locale/time_put/put/char/5.cc: Likewise.
* testsuite/22_locale/time_put/put/char/6.cc: Likewise.
* testsuite/22_locale/time_put/put/char/7.cc: Likewise.
* testsuite/22_locale/time_put/put/char/8.cc: Likewise.
* testsuite/22_locale/time_put/put/char/9.cc: Likewise.
* testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
2006-01-04 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (__sso_string_base<>::_M_dataplus):
Use _CharT_alloc_type as base class.
(_M_get_allocator, _M_swap, _M_create, _M_destroy): Adjust.
* include/ext/vstring.h (get_allocator): Tidy.
2006-01-04 Paolo Carlini <pcarlini@suse.de>
Implement Option 3 of DR 431 for all the containers.
* include/bits/allocator.h (struct __alloc_swap): Add, swaps
allocators, optimized to nothing in case they are empty.
* include/bits/stl_deque.h (deque<>::swap): Use it.
* include/bits/stl_list.h (list<>::swap): Likewise.
* include/bits/stl_tree.h (_Rb_tree<>::swap): Likewise.
* include/bits/stl_vector.h (vector<>::swap): Likewise.
* include/tr1/hashtable (hashtable<>::swap): Likewise.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_swap):
Likewise.
* include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
Likewise.
* include/ext/vstring_util.h (__vstring_utility<>::_Alloc_hider):
Clean-up (now vstring uses the generic __alloc_swap facility).
* include/tr1/unordered_map: Adjust includes.
* include/tr1/unordered_set: Likewise.
* docs/html/ext/howto.html: Add an entry for DR 431.
* testsuite/23_containers/deque/modifiers/swap.cc: Move to...
* testsuite/23_containers/deque/modifiers/swap/1.cc: ... here.
* testsuite/23_containers/deque/modifiers/swap/2.cc: New.
* testsuite/23_containers/deque/modifiers/swap/3.cc: New.
* testsuite/23_containers/list/modifiers/swap.cc: Move to...
* testsuite/23_containers/list/modifiers/swap/1.cc: ... here.
* testsuite/23_containers/list/modifiers/swap/2.cc: New.
* testsuite/23_containers/list/modifiers/swap/3.cc: New.
* testsuite/23_containers/vector/modifiers/swap.cc: Move to...
* testsuite/23_containers/vector/modifiers/swap/1.cc: ... here.
* testsuite/23_containers/vector/modifiers/swap/2.cc: New.
* testsuite/23_containers/vector/modifiers/swap/3.cc: New.
* testsuite/23_containers/set/modifiers/swap.cc: Move to...
* testsuite/23_containers/set/modifiers/swap/1.cc: ... here.
* testsuite/23_containers/set/modifiers/swap/2.cc: New.
* testsuite/23_containers/set/modifiers/swap/3.cc: New.
* testsuite/23_containers/map/modifiers/swap.cc: Move to...
* testsuite/23_containers/map/modifiers/swap/1.cc: ... here.
* testsuite/23_containers/map/modifiers/swap/2.cc: New.
* testsuite/23_containers/map/modifiers/swap/3.cc: New.
* testsuite/23_containers/multiset/modifiers/swap.cc: Move to...
* testsuite/23_containers/multiset/modifiers/swap/1.cc: ... here.
* testsuite/23_containers/multiset/modifiers/swap/2.cc: New.
* testsuite/23_containers/multiset/modifiers/swap/3.cc: New.
* testsuite/23_containers/multimap/modifiers/swap.cc: Move to...
* testsuite/23_containers/multimap/modifiers/swap/1.cc: ... here.
* testsuite/23_containers/multimap/modifiers/swap/2.cc: New.
* testsuite/23_containers/multimap/modifiers/swap/3.cc: New.
* testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc: New.
* testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc: New.
* testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc: New.
* testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc: New.
* testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc: New.
* testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc: New.
* testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc: New.
* testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc: New.
2006-01-03 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_list.h (_List_base<>::_M_get_Node_allocator): Add.
(_M_get_Tp_allocator, get_allocator): Tidy.
(list<>::list(const list&), insert(iterator, size_type, const
value_type&), insert(iterator, _InputIterator, _InputIterator)):
Use _M_get_Node_allocator.
* include/bits/stl_tree.h (_Rb_tree<>::_M_get_Node_allocator()): Add.
(_Rb_tree(const _Rb_tree<>&): Use it.
* include/bits/stl_deque.h (_Deque_base<>::_M_get_map_allocator,
get_allocator): Tidy.
* include/bits/stl_vector.h (_Vector_base<>::get_allocator): Tidy.
* testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
line numbers.
* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
* testsuite/testsuite_allocator.h (uneq_allocator<>::swap): Fix.
* testsuite/testsuite_allocator.h (class uneq_allocator): A simple
non-empty testing allocator which can be endowed of a "personality"
at construction time.
2006-01-03 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_stringstream/str/char/1.cc: Initialize vars.
* testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise, tidy.
* testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
2006-01-02 Mark Mitchell <mark@codesourcery.com>
* src/Makefile.am (LTLDFLAGS): New variable.
(CXXLINK): Use LTLDFLAGS.
* src/Makefile.in: Regenerated.
* libsupc++/Makefile.am (LTLDFLAGS): New variable.
(CXXLINK): Use LTLDFLAGS.
* libsupc++/Makefile.in: Regenerated.
2006-01-02 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/24645
* include/std/std_istream.h (basic_istream<>::_M_extract): New.
(operator>>(bool&), operator>>(short&), operator>>(unsigned short&),
operator>>(int&), operator>>(unsigned int&), operator>>(long&),
operator>>(unsigned long&), operator>>(long long&), operator>>
(unsigned long long&), operator>>(float&), operator>>(double&),
operator>>(long double&), operator>>(void*&)): Use it.
* include/bits/istream.tcc (basic_istream<>::_M_extract): Define.
* include/std/std_ostream.h (basic_ostream<>::_M_insert): New.
(operator<<(long), operator<<(unsigned long), operator<<(bool),
operator<<(short), operator<<(unsigned short), operator<<(int),
operator<<(unsigned int), operator<<(long long), operator<<
(unsigned long long), operator<<(double), operator<<(float),
operator<<(long double), operator<<(const void*): Use it.
* include/bits/ostream.tcc (basic_ostream<>::_M_insert): Define.
* src/istream-inst.cc: Add _M_extract instantiations.
* src/ostream-inst.cc: Add _M_insert instantiations.
* config/abi/pre/gnu.ver: Export the new symbols @GLIBCXX_3.4.7;
detail existing @GLIBCXX_3.4 exports of basic_ostream, num_put,
money_put, etc., symbols to avoid exporting _M_insert symbols
@GLIBCXX_3.4.
Copyright (C) 2006 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.