Benjamin Kosnik
78a5388739
throw_allocator.h: Consistent @file markup.
...
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.
From-SVN: r119334
2006-11-29 20:59:22 +00:00
Benjamin Kosnik
1ab7948178
hashtable.h: -Wshadow fixes.
...
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.
From-SVN: r119061
2006-11-21 18:10:45 +00:00
Paolo Carlini
56acf88c0f
bitmap_allocator.h: Uglify some names.
...
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.
From-SVN: r118722
2006-11-12 10:37:00 +00:00
Benjamin Kosnik
f15e02d250
re PR libstdc++/29722 (Linking with libsupc++.a creates link time undefined references)
...
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.
From-SVN: r118564
2006-11-07 18:36:32 +00:00
Benjamin Kosnik
8fafc2d3a0
exception.hpp (pb_ds): Modify for -fno-exceptions.
...
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.
From-SVN: r118554
2006-11-07 16:55:49 +00:00
Benjamin Kosnik
c927b11c78
exception.hpp: Add translation support to exception strings.
...
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.
From-SVN: r118543
2006-11-07 12:33:20 +00:00
Paolo Carlini
e7457c3eac
array (array<>::_M_at): New.
...
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.
From-SVN: r118114
2006-10-28 22:02:44 +00:00
Benjamin Kosnik
46db415941
re PR libstdc++/28514 (libstdc++ vs. anonymous namespaces)
...
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.
From-SVN: r117824
2006-10-17 11:56:21 +00:00
Paolo Carlini
9f23fee697
re PR libstdc++/29368 (wrong STL docs for rfind())
...
2006-10-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29368
* include/bits/basic_string.h: Adjust rfind documentation.
* include/ext/vstring.h: Likewise.
From-SVN: r117496
2006-10-06 11:47:56 +00:00
Paolo Carlini
1c846af9c5
rc_string_base.h (_M_compare<wchar_t>): Protect with _GLIBCXX_USE_WCHAR_T.
...
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.
From-SVN: r117373
2006-10-02 16:09:19 +00:00
Benjamin Kosnik
1f1a03efff
basic_types.hpp (comp_hash_): Remove, format.
...
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.
From-SVN: r117371
2006-10-02 14:53:41 +00:00
Paolo Carlini
56f61bfff3
type_traits.h: Avoid _T, badname for some targets; also avoid plain T.
...
2006-10-01 Paolo Carlini <pcarlini@suse.de>
* include/ext/type_traits.h: Avoid _T, badname for some targets;
also avoid plain T.
From-SVN: r117347
2006-10-01 10:39:16 +00:00
Benjamin Kosnik
10d2ebc511
types_traits.hpp (store_extra_false_type): To false_type.
...
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.
From-SVN: r117329
2006-09-30 10:25:12 +00:00
Benjamin Kosnik
beb5d0f44c
constructor_destructor_no_store_hash_fn_imps.hpp: Formating fixes.
...
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.
From-SVN: r117328
2006-09-30 00:39:20 +00:00
Benjamin Kosnik
3454c18fb5
type_traits.h (__remove_unsigned): Fix up for signed char, bool, wchar_t, and floating point types.
...
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.
Co-Authored-By: Howard Hinnant <hhinnant@apple.com>
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r117303
2006-09-29 13:38:58 +00:00
Benjamin Kosnik
1b24692f65
erase_store_hash_fn_imps.hpp: Formatting fixes.
...
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.
From-SVN: r117281
2006-09-28 13:40:07 +00:00
Benjamin Kosnik
3441f1062c
typelist.h (type_to_type): Remove.
...
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.
From-SVN: r117268
2006-09-28 01:23:58 +00:00
Paolo Carlini
47de6f6d2a
re PR libstdc++/29179 (bugs in mt_allocator)
...
2006-09-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29179
* include/ext/mt_allocator.h (__pool_base): Adjust/extend
documentation in comments.
From-SVN: r117193
2006-09-25 10:05:27 +00:00
Benjamin Kosnik
a1adedd03b
type_traits.h (__numeric_traits_integer): New.
...
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.
From-SVN: r117119
2006-09-21 20:07:10 +00:00
Paolo Carlini
7ffb61d503
hash_map: Remove forward declaration of equality operator...
...
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.
From-SVN: r117116
2006-09-21 17:54:50 +00:00
Paolo Carlini
6c331f73fb
sso_string_base.h (__sso_string_base<>::_M_max_size(), [...]): Use _M_get_allocator.
...
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.
From-SVN: r117111
2006-09-21 13:39:38 +00:00
Paolo Carlini
3ad7074772
PR libstdc++/29134 (ext/vstring bits)
...
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.
From-SVN: r117109
2006-09-21 10:34:48 +00:00
Benjamin Kosnik
d7f245b19d
typelist_assoc_container.hpp: Remove, unused.
...
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.
From-SVN: r117081
2006-09-20 13:49:46 +00:00
Benjamin Kosnik
a86151e10b
res_mng: Remove.
...
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.
From-SVN: r117050
2006-09-19 02:33:21 +00:00
Benjamin Kosnik
cbe5ba46e0
typelist.h (cond_type): Remove, use __conditional_type.
...
2006-09-18 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/typelist.h (cond_type): Remove, use __conditional_type.
From-SVN: r117025
2006-09-18 13:57:19 +00:00
Benjamin Kosnik
105c6331b2
type_traits.h: New.
...
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.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
Co-Authored-By: Peter Doerfler <gcc@pdoerfler.com>
From-SVN: r117024
2006-09-18 13:30:56 +00:00
Benjamin Kosnik
b128c5ef49
concurrence.h (__mutex::__mutex): Pass address of mutex to *_MUTEX_INIT_FUNCTION.
...
2006-09-14 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/concurrence.h (__mutex::__mutex): Pass address of
mutex to *_MUTEX_INIT_FUNCTION.
From-SVN: r116954
2006-09-14 22:28:55 +00:00
Benjamin Kosnik
2e362c7474
atomicity.h: Move to...
...
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.
From-SVN: r116942
2006-09-14 09:48:15 +00:00
Benjamin Kosnik
47bea7b87a
debug.h (_GLIBCXX_DEBUG_ONLY): New.
...
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.
From-SVN: r116766
2006-09-07 22:48:50 +00:00
Paolo Carlini
5527be59f4
basic_string.tcc (find(const _CharT*, size_type, size_type)): Robustify.
...
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.
From-SVN: r116700
2006-09-05 17:38:44 +00:00
Paolo Carlini
1a4ba99f96
basic_string.tcc (find(const _CharT*, size_type, size_type)): Reimplement in terms of traits::eq and traits::compare.
...
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.
From-SVN: r116698
2006-09-05 15:43:47 +00:00
Benjamin Kosnik
06e744948b
re PR c++/28871 (massive C++ compile time slowdown)
...
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.
From-SVN: r116680
2006-09-04 15:41:18 +00:00
Paolo Carlini
1d3e6248e5
re PR libstdc++/24469 (Possible race condition in mt_allocator causing SIGSEGV)
...
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.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r116660
2006-09-02 08:31:45 +00:00
Richard Guenther
e282a2bc9f
mt_allocator.h: Remove volatile qualifiers from data members and corresponding locals and...
...
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.
From-SVN: r116606
2006-08-31 19:52:16 +00:00
Paolo Carlini
7867a3f739
re PR libstdc++/28765 (__gnu_cxx::__vstring::clear() is slow)
...
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.
From-SVN: r116240
2006-08-18 15:42:05 +00:00
Roger Sayle
bd11bebe1b
codevt_specializations.h (__iconv_adaptor): Use identifier _Tp instead of _T in template argument to avoid conflict.
...
* include/ext/codevt_specializations.h (__iconv_adaptor): Use
identifier _Tp instead of _T in template argument to avoid conflict.
From-SVN: r115823
2006-07-30 16:42:39 +00:00
Benjamin Kosnik
b82f782bfb
PR libstdc++/19664 round 3
...
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.
From-SVN: r115790
2006-07-28 04:57:34 +00:00
Paolo Carlini
d5fa9a0dd1
codecvt_specializations.h: Fix typo in commit for libstdc++/28290.
...
2006-07-11 Paolo Carlini <pcarlini@suse.de>
* include/ext/codecvt_specializations.h: Fix typo in commit
for libstdc++/28290.
From-SVN: r115361
2006-07-12 00:17:42 +00:00
Paolo Carlini
6ab639421e
re PR libstdc++/28290 (error: 'iconv_t' does not name a type)
...
2006-07-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28290
* include/ext/codecvt_specializations.h: Fix, adding missing
includes and guards.
From-SVN: r115354
2006-07-11 17:48:10 +00:00
Paolo Carlini
2da7ea252a
rc_string_base.h (__rc_string_base::_S_max_size): Adjust, take into account rounding in _M_create.
...
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.
From-SVN: r115158
2006-07-03 19:27:55 +00:00
Paolo Carlini
7aa6ba766c
[multiple changes]
...
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.
From-SVN: r115155
2006-07-03 17:31:46 +00:00
Benjamin Kosnik
cad367a62b
typelist.h (typelist_append): To append_typelist.
...
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.
From-SVN: r115037
2006-06-27 19:20:06 +00:00
Jonathan Lennox
746907b225
hash_prime_size_policy_imp.hpp: Cast to size_t instead.
...
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.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r114894
2006-06-22 15:59:22 +00:00
Ami Tavory
11343881d3
hash_prime_size_policy_imp.hpp: Fix for 64-bit machines.
...
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.
From-SVN: r114888
2006-06-22 11:17:24 +00:00
Benjamin Kosnik
81ee09de66
type_utils.hpp (numeric_traits): Add, const expression interface to std::numeric_limits::min and max functions.
...
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.
From-SVN: r114706
2006-06-16 06:32:22 +00:00
Ami Tavory
4569a895f5
pb_assoc: Delete.
...
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.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r114659
2006-06-14 23:09:51 +00:00
Paolo Carlini
b7ee72de2d
re PR libstdc++/24704 (__gnu_cxx::__exchange_and_add is called even for single threaded applications)
...
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.
From-SVN: r114044
2006-05-24 16:37:42 +00:00
Marc Glisse
05a79eb6bc
pool_allocator.h: Add missing std:: qualifications.
...
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.
From-SVN: r113673
2006-05-10 15:43:20 +00:00
Douglas Gregor
49525c762c
re PR libstdc++/27404 (Rope iterators are not InputIterators)
...
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.
From-SVN: r113519
2006-05-04 09:37:56 +00:00
Benjamin Kosnik
0c092147be
re PR libstdc++/26875 (Array allocator use count is shared between array_allocator instances)
...
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.
From-SVN: r113283
2006-04-26 19:52:31 +00:00
Marc Glisse
05a2763ef3
re PR libstdc++/27199 (ptrdiff_t and size_t outside of namespace std)
...
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.
From-SVN: r113195
2006-04-23 14:54:26 +00:00
Paolo Carlini
df10833162
vstring.h (operator[]): Allow s[s.size()] in debug mode, but not pedantic mode.
...
2006-03-28 Paolo Carlini <pcarlini@suse.de>
* include/ext/vstring.h (operator[]): Allow s[s.size()] in
debug mode, but not pedantic mode.
From-SVN: r112447
2006-03-28 12:54:04 +00:00
Benjamin Kosnik
45f388bb44
c++config: Simplify debug namespaces.
...
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.
From-SVN: r111356
2006-02-22 00:57:24 +00:00
Paolo Carlini
656032b8c1
[multiple changes]
...
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.
From-SVN: r109883
2006-01-18 11:22:10 +00:00
Paolo Carlini
f7ace77f1f
sso_string_base.h (__sso_string_base<>::_M_dataplus): Use _CharT_alloc_type as base class.
...
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.
From-SVN: r109324
2006-01-04 11:34:45 +00:00
Chris Jefferson
8b5bc374b1
mt_allocator.h (__mt_alloc::__mt_alloc): Remove name of unused parameter.
...
2005-12-26 Chris Jefferson <chris@bubblescope.net>
* include/ext/mt_allocator.h (__mt_alloc::__mt_alloc): Remove
name of unused parameter.
* include/bits/stream_iterator.h (istream_iterator::istream_iterator):
Construct _M_value.
* include/debug/functions.h (__check_valid_range): Add
__attribute__((unused)).
* include/tr1/hashtable (hashtable::end): Remove name of unused
parameter.
* include/tr1/tuple_iterate.h (tuple::tuple): Likewise.
(tuple::operator=): Add __attribute__((unused)).
* include/tr1/functional (Fnv_hash<4>::hash): Add static_cast.
(Fnv_hash<8>::hash): Likewise.
* testsuite/25_algorithms/iter_swap/20577.cc (swap): Remove name of
unused parameter.
* testsuite/25_algorithms/unique_copy/check_type.cc (S2::S2,X2::X2):
Likewise.
* testsuite/22_locale/ctype/narrow/char/19955.cc (do_narrow): Likewise.
* testsuite/22_locale/ctype/is/char/9858.cc (Derived::do_is,
Derived::do_scan_is, Derived::do_scan_not, Derived2::do_is,
Derived2::do_scan_is, Derived2::do_scan_not): Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc (TP::do_put):
Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc (TP::do_put):
Likewise.
* testsuite/22_locale/time_put/put/char/12439_1.cc (TP::do_put):
Likewise.
* testsuite/22_locale/time_put/put/char/12439_3.cc (TP::do_put):
Likewise.
* testsuite/testsuite_io.h (fail_num_get::do_get, fail_num_put::do_put):
Likewise.
* testsuite/25_algorithms/find/17441.cc (find): Likewise.
* testsuite/23_containers/vector/cons/clear_allocator.cc
(clear_alloc::clear_alloc): Likewise.
* testsuite/23_containers/vector/bool/clear_allocator.cc
(clear_alloc::clear_alloc): Likewise.
* testsuite/23_containers/list/cons/clear_allocator.cc
(clear_alloc::clear_alloc): Likewise.
* testsuite/23_containers/set/modifiers/16728.cc (test_container):
Likewise.
* testsuite/27_io/basic_ios/cons/char/3.cc (char_traits::to_char_type,
to_int_type): Likewise.
* testsuite/27_io/basic_filebuf/imbue/12206.cc (codecvt::do_out, do_in,
do_unshift, do_length): Likewise.
* testsuite/21_strings/basic_string/capacity/1.cc
(operator==(A<T>,A<T>), operator<(A<T>,A<T>),
char_traits::to_char_type, char_traits::to_int_type): Likewise
* testsuite/testsuite_character.h (ctype::do_is, ctype::do_scan_is,
ctype::do_scan_not, do_toupper, do_tolower): Likewise.
* testsuite/25_algorithms/replace_copy/check_type.cc (Z::operator=):
Add missing return statement.
* testsuite/25_algorithms/replace_copy_if/check_type.cc (Z::operator=):
Likewise.
* testsuite/testsuite_iterators.h (output_iterator_wrapper::operator=,
random_access_iterator_wrapper::operator==): Likewise.
* testsuite/20_util/functional/binders/1.cc (s::f_int_int_const,
s::f_int_int, s::f_int_void_const, s::f_int_void): Likewise.
* testsuite/27_io/types/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/write/wchar_t/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/write/char/1.cc (test01): Likewise.
* testsuite/21_strings/c_strings/wchar_t/24559.cc (main): Likewise.
* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc (check): Add static
cast.
* testsuite/27_io/basic_istream/ignore/char/2.cc (check): Likewise.
* testsuite/27_io/basic_istream/getline/wchar_t/5.cc (check): Likewise.
* testsuite/27_io/basic_istream/getline/char/5.cc (check): Likewise.
* testsuite/testsuite_allocator.h (check_new): Likewise.
(check_deallocate_null): Add missing return value.
* testsuite/ext/pool_allocator/allocate_chunk.cc (test01):
Make variable unsigned.
* testsuite/23_containers/vector/modifiers/erase/1.cc (N,N1,N2,N3,N4,
N5,test01): Likewise.
* testsuite/26_numerics/valarray/valarray_subset_assignment.cc
(check_array): Likewise.
(main): Removed unused variable.
* testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc (test05):
Removed unused variable.
* testsuite/27_io/basic_ostream/flush/wchar_t/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/flush/char/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/endl/wchar_t/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/endl/char/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/ends/wchar_t/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/ends/char/1.cc (test01): Likewise.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/
assign/shared_ptr.cc (test01): Correct return type.
* testsuite/27_io/basic_filebuf/close/char/2.cc (test_02):
Add default value to close_num.
From-SVN: r109062
2005-12-26 10:53:42 +00:00
Benjamin Kosnik
3cbc7af037
c++config: Add in revised namespace associations.
...
2005-12-18 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Add in revised namespace associations.
_GLIBCXX_BEGIN_NAMESPACE: New macro.
_GLIBCXX_END_NAMESPACE: Same.
_GLIBCXX_BEGIN_NESTED_NAMESPACE: Same.
_GLIBCXX_END_NESTED_NAMESPACE: Same.
* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS]): Add gnu-versioned-namespace.
* configure: Regenerated.
* config.h.in: Same.
* config/abi/pre/gnu-versioned-namespace.ver: New.
* config/abi/pre/gnu.ver (GLIBCXX_3.4.7): Add exports for nested
debug mode items.
* include/Makefile.am (${host_builddir}/c++config.h): Fill in
values for __GLIBCXX__ and _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION.
* include/Makefile.in: Regnerate.
* src/compatibility.cc: Alias new, nested definitions to exported
symbols from non-nested __gnu_debug.
* src/Makefile.am: Add in ENABLE_SYMVERS_GNU_NAMESPACE.
* src/Makefile.in: Regenerate.
* docs/html/debug_mode.html: Revise for nested design.
* docs/html/debug.html: Use debug qualifications instead of
__gnu_debug.
* docs/html/configopts.html: Revise documentation for
--enable-symvers.
* include/debug/formatter: Simplify namespace qualifications for
current, nested-only reality. Add top-level namespace alias,
namespace debug, for debug-mode containers.
* include/debug/safe_iterator.h: Same.
* include/debug/set.h: Same.
* include/debug/hash_multimap.h: Same.
* include/debug/hash_set.h: Same.
* include/debug/bitset
* include/debug/safe_sequence.h: Same.
* include/debug/multiset.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/functions.h: Same.
* include/debug/safe_iterator.tcc
* include/debug/hash_multiset.h: Same.
* include/debug/vector
* include/debug/map.h: Same.
* include/debug/deque
* include/debug/hash_map.h: Same.
* include/debug/string
* include/debug/macros.h: Same.
* include/debug/list
* include/debug/debug.h: Same.
* include/debug/multimap.h: Same.
* src/debug.cc: Same.
* testsuite/23_containers/vector/invalidation/1.cc: Cleanups.
* 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/insert/16813.cc: Same.
* include/bits/basic_ios.h: Use _GLIBCXX_BEGIN_NAMESPACE(std) and
friends.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/localefwd.h: Same.
* include/bits/valarray_array.tcc: Same.
* include/bits/valarray_after.h: Same.
* include/bits/gslice_array.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/gslice.h: Same.
* include/bits/locale_facets.tcc: Same.
* include/bits/locale_classes.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/stl_heap.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/atomicity.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/concurrence.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_pair.h: Same.
* include/bits/basic_ios.tcc: Same.
* include/bits/stl_raw_storage_iter.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_numeric.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/istream.tcc: Same.
* include/bits/postypes.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/stl_uninitialized.h: Same.
* include/bits/ostream.tcc: Same.
* include/bits/slice_array.h: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/sstream.tcc: Same.
* include/bits/stl_iterator_base_funcs.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stringfwd.h: Same.
* include/bits/c++config
* include/bits/stl_iterator.h: Same.
* include/bits/valarray_array.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/vector.tcc: Same.
* include/bits/deque.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/list.tcc: Same.
* include/bits/streambuf_iterator.h: Same.
* include/bits/valarray_before.h: Same.
* include/bits/stl_construct.h: Same.
* include/bits/stl_function.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/streambuf.tcc: Same.
* include/bits/allocator.h: Same.
* include/bits/stl_tree.h: Same.
* include/bits/fstream.tcc: Same.
* include/bits/stl_relops.h: Same.
* include/bits/functexcept.h: Same.
* include/std/std_valarray.h: Same.
* include/std/std_iostream.h: Same.
* include/std/std_streambuf.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_iosfwd.h: Same.
* include/std/std_iomanip.h: Same.
* include/std/std_fstream.h: Same.
* include/std/std_limits.h: Same.
* include/std/std_stdexcept.h: Same.
* include/std/std_istream.h: Same.
* include/std/std_complex.h: Same.
* include/std/std_memory.h: Same.
* include/std/std_ostream.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_cmath.h: Same.
* include/c_std/std_ctime.h: Same.
* include/c_std/std_clocale.h: Same.
* include/c_std/std_csetjmp.h: Same.
* include/c_std/std_cwchar.h: Same.
* include/c_std/std_cstring.h: Same.
* include/c_std/std_cstddef.h: Same.
* include/c_std/std_cwctype.h: Same.
* include/backward/iterator.h: Same.
* include/backward/set.h: Same.
* include/backward/hashtable.h: Same.
* include/backward/fstream.h: Same.
* include/backward/tempbuf.h: Same.
* include/backward/istream.h: Same.
* include/backward/bvector.h: Same.
* include/backward/stack.h: Same.
* include/backward/rope.h: Same.
* include/backward/complex.h: Same.
* include/backward/ostream.h: Same.
* include/backward/heap.h: Same.
* include/backward/iostream.h: Same.
* include/backward/function.h: Same.
* include/backward/multimap.h: Same.
* include/backward/pair.h: Same.
* include/backward/stream.h: Same.
* include/backward/iomanip.h: Same.
* include/backward/strstream
* include/backward/slist.h: Same.
* include/backward/tree.h: Same.
* include/backward/vector.h: Same.
* include/backward/deque.h: Same.
* include/backward/multiset.h: Same.
* include/backward/list.h: Same.
* include/backward/map.h: Same.
* include/backward/algobase.h: Same.
* include/backward/hash_map.h: Same.
* include/backward/algo.h: Same.
* include/backward/queue.h: Same.
* include/backward/streambuf.h: Same.
* src/allocator-inst.cc: Same.
* src/complex_io.cc: Same.
* src/localename.cc: Same.
* src/limits.cc: Same.
* src/ios_failure.cc: Same.
* src/locale-misc-inst.cc: Same.
* src/streambuf-inst.cc: Same.
* src/misc-inst.cc: Same.
* src/concept-inst.cc: Same.
* src/ios_locale.cc: Same.
* src/pool_allocator.cc: Same.
* src/fstream-inst.cc: Same.
* src/istream-inst.cc: Same.
* src/string-inst.cc: Same.
* src/locale_init.cc: Same.
* src/ctype.cc: Same.
* src/strstream.cc: Same.
* src/ostream-inst.cc: Same.
* src/functexcept.cc: Same.
* src/streambuf.cc: Same.
* src/sstream-inst.cc: Same.
* src/ios.cc: Same.
* src/valarray-inst.cc: Same.
* src/locale.cc: Same.
* src/tree.cc: Same.
* src/stdexcept.cc: Same.
* src/istream.cc: Same.
* src/compatibility.cc: Same.
* src/locale-inst.cc: Same.
* src/globals_io.cc: Same.
* src/list.cc: Same.
* src/ios_init.cc: Same.
* src/locale_facets.cc: Same.
* src/codecvt.cc: Same.
* include/tr1/unordered_map: Use _GLIBCXX_BEGIN_NAMESPACE(tr1).
* include/tr1/boost_shared_ptr.h: Same.
* include/tr1/tuple
* include/tr1/hashtable
* include/tr1/type_traits_fwd.h: Same.
* include/tr1/unordered_set
* include/tr1/functional
* include/tr1/ref_fwd.h: Same.
* include/tr1/utility
* include/tr1/type_traits
* include/tr1/array
* include/ext/hashtable.h: Use _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx).
* include/ext/typelist.h: Same.
* include/ext/hash_map: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/iterator: Same.
* include/ext/rb_tree: Same.
* include/ext/numeric: Same.
* include/ext/vstring.tcc: Same.
* include/ext/sso_string_base.h: Same.
* include/ext/stdio_filebuf.h: Same.
* include/ext/algorithm: Same.
* include/ext/codecvt_specializations.h: Same.
* include/ext/new_allocator.h: Same.
* include/ext/array_allocator.h: Same.
* include/ext/vstring_util.h: Same.
* include/ext/vstring_fwd.h: Same.
* include/ext/mt_allocator.h: Same.
* include/ext/debug_allocator.h: Same.
* include/ext/slist: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/ext/hash_fun.h: Same.
* include/ext/malloc_allocator.h: Same.
* include/ext/functional: Same.
* include/ext/bitmap_allocator.h: Same.
* include/ext/pod_char_traits.h: Same.
* include/ext/vstring.h: Same.
* include/ext/ropeimpl.h: Same.
* include/ext/hash_set: Same.
* include/ext/memory: Same.
* include/ext/rope: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/concurrence.h: Same.
* include/bits/atomicity.h: Same.
* config/locale/gnu/numeric_members.cc: Same.
* config/locale/gnu/collate_members.cc: Same.
* config/locale/gnu/ctype_members.cc: Same.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/gnu/codecvt_members.cc: Same.
* config/locale/gnu/messages_members.cc: Same.
* config/locale/gnu/c_locale.h: Same.
* config/locale/gnu/monetary_members.cc: Same.
* config/locale/gnu/time_members.cc: Same.
* config/locale/ieee_1003.1-2001/c_locale.h: Same.
* config/locale/generic/numeric_members.cc: Same.
* config/locale/generic/collate_members.cc: Same.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/generic/c_locale.cc: Same.
* config/locale/generic/codecvt_members.cc: Same.
* config/locale/generic/messages_members.cc: Same.
* config/locale/generic/c_locale.h: Same.
* config/locale/generic/monetary_members.cc: Same.
* config/locale/generic/time_members.cc: Same.
* config/os/aix/atomicity.h: Same.
* config/os/irix/atomicity.h: Same.
* config/cpu/powerpc/atomicity.h: Same.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/ia64/atomicity.h: Same.
* config/cpu/alpha/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.h: Same.
* config/cpu/s390/atomicity.h: Same.
* config/io/c_io_stdio.h: Same.
* config/io/basic_file_stdio.cc: Same.
* config/io/basic_file_stdio.h: Same.
* src/misc-inst.cc: Same.
* src/concept-inst.cc: Same.
* src/ext-inst.cc: Same.
* src/string-inst.cc: Same.
* src/pool_allocator.cc: Same.
* src/bitmap_allocator.cc: Same.
* src/mt_allocator.cc: Same.
* libsupc++/exception: Same.
* libsupc++/vterminate.cc: Same.
* testsuite/ext/hash_map/1.cc: Explicitly qualify __gnu_cxx::hash_map.
* testsuite/ext/hash_map/14648.cc: Same.
* libsupc++/eh_alloc.cc: Correct comment line spacing.
From-SVN: r108775
2005-12-19 00:56:05 +00:00
Paolo Carlini
b6105bf2c3
sso_string_base.h (__sso_string_base<>::_M_compare): Add...
...
2005-12-10 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (__sso_string_base<>::_M_compare):
Add, specialized for char and wchar_t to immediately return true
when a string is compared to itself.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_compare):
Likewise, for the same _Rep.
* include/ext/vstring.h (compare(const string&)): Use it.
* include/ext/sso_string_base.h (__sso_string_base<>::_M_destroy):
Deallocate passed size + 1.
(_M_dispose, _M_reserve): Adjust.
From-SVN: r108372
2005-12-11 00:41:29 +00:00
Paolo Carlini
afe6d70550
sso_string_base.h (__sso_string_base<>::_M_assign): Simplify, avoid pointless reallocations.
...
2005-12-05 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (__sso_string_base<>::_M_assign):
Simplify, avoid pointless reallocations.
From-SVN: r108063
2005-12-05 16:39:18 +00:00
Paolo Carlini
56540d20c2
sso_string_base.h (__sso_string_base<>::_M_reserve): Simplify.
...
2005-12-04 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve):
Simplify.
From-SVN: r108036
2005-12-05 01:57:59 +00:00
Paolo Carlini
cf8829194f
vstring.h (__versa_string<>::operator+, [...]): Move out of line...
...
2005-12-04 Paolo Carlini <pcarlini@suse.de>
* include/ext/vstring.h (__versa_string<>::operator+, all
versions): Move out of line...
* include/ext/vstring.tcc (__versa_string<>::operator+): ...
here; consistently use reserve for the benefit of sso_string_base;
prefer push_back to single-char append when appropriate.
* include/ext/vstring.h (__versa_string<>::push_back): Don't
call _M_reserve, _M_mutate instead.
(reserve): Just forward to _M_reserve.
* include/ext/vstring.tcc (__versa_string<>::_M_reserve): Remove.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_reserve): Also
do the initial checks (first on length, in case __res == capacity).
* include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve:
Likewise; don't call _M_set_length unnecessarily.
2005-12-04 Paolo Carlini <pcarlini@suse.de>
* include/ext/vstring.h (__versa_string<>::_M_append): New.
(append(const __versa_string&), append(const __versa_string&,
size_type, size_type), append(const _CharT*, size_type),
append(const _CharT*)): Use it.
(append(size_type, _CharT)): Delegate to _M_replace_aux.
(assign(const __versa_string&, size_type, size_type),
assign(const _CharT*), replace(size_type, size_type,
const _CharT*, size_type)): Forward to _M_replace.
* include/ext/vstring.tcc (__versa_string<>::_M_append):
Define, core append functionality.
(_M_replace): Simplify, move __s == 0 case to _M_replace_aux.
(_M_replace_aux): Reorganize, don't call _M_replace.
2005-12-04 Paolo Carlini <pcarlini@suse.de>
* include/ext/vstring.tcc (__versa_string<>::_M_replace):
Perform _M_check_length at the beginning and remove it from ...
(replace, _M_replace_dispatch, _M_replace_aux, assign): ... here.
(assign): Now move inline.
(resize): Don't call _M_check_length redundantly, append does.
2005-12-04 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (__sso_string_base<>::_M_get_allocator):
Add non const version.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_get_allocator):
Likewise.
* include/ext/sso_string_base.h (__sso_string_base<>::_M_erase): Add.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_erase): Likewise.
(_M_leak_hard): Use it.
* include/ext/vstring.h (__versa_string<>::clear, erase, all
versions): Use it.
* include/ext/vstring.tcc (__versa_string<>::resize): Likewise.
* include/ext/vstring.h (__versa_string<>::_M_replace_safe):
Remove.
* include/ext/vstring.h (__versa_string<>::_M_replace): New, does
the in-place work or delegates to _M_mutate in case of reallocation.
* include/ext/vstring.tcc (__versa_string<>::_M_replace_safe):
Remove.
* include/ext/vstring.tcc (__versa_string<>::_M_replace): Define.
(assign, replace, _M_replace_dispatch, _M_replace_aux): Use it.
* include/ext/sso_string_base.h (__sso_string_base<>::_M_mutate):
Change to manage only reallocations.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_mutate):
Likewise.
* include/ext/vstring.h (__versa_string<>::insert(size_type,
const __versa_string&), insert(size_type, const __versa_string&,
size_type, size_type), insert(size_type, const _CharT*, size_type),
insert(size_type, const _CharT*)): Delegate to replace.
* include/ext/vstring.h (__versa_string<>::reserve): Move out of
line.
* include/ext/vstring.tcc (__versa_string<>::reserve): Do the
checks and call _M_reserve.
* include/ext/vstring.h (__versa_string<>::append): Call _M_reserve
instead of reserve.
* include/ext/vstring.tcc (__versa_string<>::append, all versions):
Likewise.
* include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve):
Adjust.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_reserve):
Likewise.
From-SVN: r108034
2005-12-05 00:32:31 +00:00
Paolo Carlini
b6cb8dc2d8
sso_string_base.h: Minor formatting and stylistic fixes.
...
2005-11-21 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h: Minor formatting and stylistic fixes.
(__sso_string_base<>::_M_get_allocator): Return by const ref.
* include/ext/rc_string_base.h: Likewise.
(__rc_string_base<>::_M_get_allocator): Return by const ref.
(__rc_string_base<>::_M_dispose): Take void, use _M_get_allocator.
(__rc_string_base<>::_M_grab): Take one alloc, use _M_get_allocator.
(__rc_string_base<>::~__rc_string_base,
__rc_string_base(const __rc_string_base&), _M_assign, _M_reserve,
_M_mutate): Adjust.
* include/ext/vstring_util.h: Minor stylistic fixes.
From-SVN: r107317
2005-11-21 18:38:05 +00:00
Paolo Carlini
7697e6c66a
rc_string_base.h (__rc_string_base<>::_Rep): Avoid the anonymous struct extension, adjust everywhere.
...
2005-11-18 Paolo Carlini <pcarlini@suse.de>
* include/ext/rc_string_base.h (__rc_string_base<>::_Rep): Avoid the
anonymous struct extension, adjust everywhere.
* include/ext/rc_string_base.h (__rc_string_base<>::_S_empty_rep()):
Just use a static member.
(__rc_string_base<>::__rc_string_base(), _S_construct): Adjust.
* include/ext/rc_string_base.h (__rc_string_base<>::_Rep): Use anonymous
union together with _CharT to fix alignment issues, rebind to _Rep and
rename _Raw_alloc to _Rep_alloc_type.
(__rc_string_base<>::_Rep::_S_create, _M_destroy): Adjust consistently.
* include/ext/vstring_util.h (__is_null_p): Move inside struct
__vstring_utility as static _S_is_null_pointer.
* include/ext/sso_string.h
(__sso_string_base<>::_M_construct(std::forward_iterator_tag): Adjust.
* include/ext/rc_string_base.h
(__rc_string_base<>::_S_construct(std::forward_iterator_tag): Likewise.
Implement Option 3 of DR 431 for ext/vstring - both available bases.
* include/bits/cpp_type_traits.h (struct __is_empty): Add.
* include/ext/vstring.h (__versa_string<>::swap): Delegate to
this->_M_swap.
* include/ext/vstring.tcc (__versa_string<>::swap): Remove.
* include/ext/vstring_util.h (struct __vstring_utility<>): Add struct
_Alloc_hider<>, augmented of allocator swapping facility, specialized
to nop for empty allocators.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_swap): Use it.
(__rc_string_base<>::_M_is_leaked, _M_set_sharable): Change to private.
* include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
Likewise.
(__sso_string_base<>::_M_is_leaked, _M_set_sharable): Remove, unused.
* include/ext/rc_string_base.h (__rc_string_base<>::_M_data(_CharT*):
Return void.
* include/ext/sso_string_base.h (__sso_string_base<>::_M_data(_CharT*):
Likewise.
From-SVN: r107176
2005-11-18 11:50:22 +00:00
Paolo Carlini
f9c4ee6d10
sso_string_base.h (__sso_string_base<>::_M_swap): Change the various traits_type::copy call to always copy the entire local buffer...
...
2005-11-03 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
Change the various traits_type::copy call to always copy the
entire local buffer; return early and don't do a full swap on
the lengths for two common cases; change two _S_copy to plain
traits_type::copy.
From-SVN: r106431
2005-11-03 13:13:21 +00:00
Paolo Carlini
7058c3be1a
sso_string_base.h (_M_swap): Rewrite.
...
2005-10-19 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (_M_swap): Rewrite.
From-SVN: r105654
2005-10-20 01:07:13 +00:00
Paolo Carlini
486516b60b
rc_string_base.h (_S_terminal): Remove.
...
2005-10-19 Paolo Carlini <pcarlini@suse.de>
* include/ext/rc_string_base.h (_S_terminal): Remove.
(_M_set_length): Adjust.
(_S_max_size): Change to anonymous enum.
(_M_max_size()): Add, returns the latter.
* include/ext/sso_string_base.h: Likewise.
* include/ext/vstring.h (max_size): Adjust.
From-SVN: r105616
2005-10-19 14:25:31 +00:00
Paolo Carlini
a5cee4808e
Fix libstdc++/24196 for ext/vstring/rc by returning to the behavior of basic_string pre-2003-06-13...
...
2005-10-07 Paolo Carlini <pcarlini@suse.de>
Fix libstdc++/24196 for ext/vstring/rc by returning to the behavior
of basic_string pre-2003-06-13; remove fully-dynamic-string stuff.
* include/ext/rc_string_base.h (_M_refcopy): Move inside the
_Rep class and remove code in macro.
(__rc_string_base()): Construct with _S_empty_rep()._M_refcopy().
(_M_dispose, _M_leak_hard): Remove code in macro.
(_S_construct): Return _S_empty_rep()._M_refcopy() for empty string.
(_M_grab): Adjust.
* include/ext/rc_string_base.h (_Rep::_M_refdata()): Minor tweak,
mark throw().
From-SVN: r105090
2005-10-07 15:55:17 +00:00
Paolo Carlini
c54c1b2b52
sso_string_base.h (struct __sso_string_local): Remove...
...
2005-10-05 Paolo Carlini <pcarlini@suse.de>
* include/ext/sso_string_base.h (struct __sso_string_local):
Remove, actually POD types cannot have user defined constructors
(being aggregates) and therefore can always be members of unions.
(class __sso_string_base): Adjust consistently.
From-SVN: r105021
2005-10-05 23:50:18 +00:00
Benjamin Kosnik
4bd2f9d6a1
2005-09-25 Benjamin Kosnik <bkoz@redhat.com>
...
Eric Botcazou <ebotcazou@libertysurf.fr>
* include/ext/mt_allocator.h
(__per_type_pool<...true>::_S_initialize_once): Always call
_M_initialize_once.
(__common_pool<...true>::_S_initialize_once): Same.
Co-Authored-By: Eric Botcazou <ebotcazou@libertysurf.fr>
From-SVN: r104678
2005-09-27 01:40:46 +00:00
Guillaume Melquiond
fa5e3f0675
re PR libstdc++/23956 (Class __mt_alloc overexerts __policy_type::_S_get_pool)
...
2005-09-21 Guillaume Melquiond <guillaume.melquiond@ens-lyon.fr>
PR libstdc++/23956
* include/ext/mt_allocator.h: Remove excess
policy_type::_S_get_pool calls in constructors.
From-SVN: r104520
2005-09-22 08:48:31 +00:00
Benjamin Kosnik
2f9f6cef1c
[multiple changes]
...
2005-09-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* include/ext/mt_allocator.h
(__gnu_cxx::__create_handler): Remove.
(__pool<true>::_M_destroy_thread_key): Compatibility only.
(__pool<true>::_M_initialize(__destroy): Same.
(__pool<true>::_M_initialize): New.
(__pool<true>::_M_initialize_once): Nothing fancy.
(__pool<true>::_M_once): Remove.
(__common_pool): New.
(__common_pool_base): New.
(__per_type_pool): New.
(__per_type_pool_base): New.
* src/mt_allocator.cc: Same.
* config/linker-map.gnu (__pool<true>::_M_initialize()): Add.
2005-09-11 Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* src/mt_allocator.cc (__gnu_internal::freelist_mutex): Make static.
(__gnu_internal::__freelist): New type.
(__gnu_internal::freelist): New variable.
(__gnu_internal::_M_destroy_thread_key): New function.
(__gnu_cxx::__pool<true>::_M_destroy): Don't delete
_M_thread_freelist_initial.
(__gnu_cxx::__pool<true>::_M_initialize): Make argument nameless.
Don't use _M_thread_freelist and _M_thread_freelist_initial
__pool<true> fields, instead use __gnu_internal::freelist fields, call
gthread_key_create just once. Use
__gnu_internal::_M_destroy_thread_key as key destructor.
(__gnu_cxx::__pool<true>::_M_get_thread_id): Store size_t id
rather than _Thread_record* in the thread specific value. Don't
use _M_thread_freelist __pool<true> field, instead use
__gnu_internal::freelist fields.
(__gnu_cxx::__pool<true>::_M_destroy_thread_key): Do nothing.
2005-09-11 Benjamin Kosnik <bkoz@redhat.com>
Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* testsuite/testsuite_shared.cc: New.
* testsuite/lib/dg-options.exp (dg-require-sharedlib): New.
* testsuite/lib/libstdc++.exp (libstdc++_init): Look for shared
library, and set v3-sharedlib based on this.
(check_v3_target_sharedlib): New.
(proc v3-build_support): Build shared objects.
* testsuite/ext/mt_allocator/22309_thread.cc: New, use above.
From-SVN: r104161
2005-09-12 04:49:11 +00:00
Paolo Carlini
e182017e46
re PR libstdc++/23781 (Implicit conversion from NULL to list<T>::iterator)
...
2005-09-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/23781
* include/bits/stl_list.h (_List_iterator<>::
_List_iterator(_List_node_base*), _List_const_iterator<>::
_List_const_iterator(const _List_node_base*)): Make explicit.
(list<>::begin(), list<>::end(), list<>::pop_back()): Adjust
consistently.
* include/bits/list.tcc (list<>::insert, list<>::erase): Adjust
consistently.
* include/bits/stl_tree.h (_Rb_tree_iterator<>::
_Rb_tree_iterator(_Link_type), _Rb_tree_const_iterator<>::
_Rb_tree_const_iterator(_Link_type)): Make explicit.
(_Rb_tree<>::begin(), _Rb_tree<>::end()): Adjust consistently.
* include/ext/slist (_Slist_iterator<>::_Slist_iterator(_Node*)):
Make explicit.
(slist<>::erase(iterator), slist<>::erase(iterator, iterator)):
Adjust consistently.
* include/tr1/hashtable (hashtable_iterator<>::
hashtable_iterator(hash_node<>**)): Make explicit.
* testsuite/23_containers/list/23781.cc: New.
* testsuite/23_containers/map/23781.cc: Likewise.
* testsuite/23_containers/multimap/23781.cc: Likewise.
* testsuite/23_containers/multiset/23781.cc: Likewise.
* testsuite/23_containers/set/23781.cc: Likewise.
* testsuite/ext/slist/23781.cc: Likewise.
* testsuite/tr1/6_containers/unordered/23781.cc: Likewise.
* testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
line numbers.
* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
* include/tr1/array (array<>::begin(), array<>::end()): Adjust
stylistically for consistency with the other containers.
From-SVN: r104139
2005-09-11 09:48:41 +00:00
Kelley Cook
83f517994d
All files: Update FSF address.
...
2005-08-17 Kelley Cook <kcook@gcc.gnu.org>
* All files: Update FSF address.
From-SVN: r103192
2005-08-17 02:28:44 +00:00
Paolo Carlini
872d8fea40
Add class __versa_string, a versatile "basic_string-type" class...
...
2005-07-05 Paolo Carlini <pcarlini@suse.de>
Add class __versa_string, a versatile "basic_string-type" class:
an additional, non-standard, template parameter allows to specify
the preferred base class. Two are provided: __rc_string_base,
which implements a behavior very similar to our standard string,
and __sso_string_base, not reference-counted and optimized for
short strings.
* include/ext/rc_string_base.h: New.
* include/ext/sso_string_base.h: Likewise.
* include/ext/vstring.h: Likewise.
* include/ext/vstring.tcc: Likewise.
* include/ext/vstring_fwd.h: Likewise.
* include/ext/vstring_util.h: Likewise.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* testsuite/ext/vstring/explicit_instantiation/1.cc: New.
* testsuite/ext/vstring/explicit_instantiation/2.cc: Likewise.
* testsuite/ext/vstring/explicit_instantiation/char/1.cc: Likewise.
* testsuite/ext/vstring/explicit_instantiation/wchar_t/1.cc: Likewise.
* Makefile.in: Regenerate with autotools 1.9.3 (to date, the version
officially used by v3).
* aclocal.m4: Likewise.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
From-SVN: r101639
2005-07-05 23:07:18 +00:00
Ulrich Weigand
625684fa1c
* include/ext/pb_assoc/detail/hash_fn/mask_based_range_hashing.hpp
...
(PB_ASSOC_CLASS_C_DEC::s_highest_bit_1): Cast constant 1 to target
type before shifting.
From-SVN: r101477
2005-06-30 21:33:31 +00:00
Paolo Carlini
a81408c939
PR libstdc++/21244 (cont^2)
...
2005-06-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/21244 (cont^2)
* include/ext/bitmap_allocator.h: Convert everywhere
bits_per_block to size_t.
From-SVN: r101438
2005-06-29 22:12:18 +00:00
Benjamin Kosnik
fd1e17264b
documentation.html: Add link for policy based associative containers docs.
...
2005-06-27 Benjamin Kosnik <bkoz@redhat.com>
Ami Tavory <pbassoc@gmail.com>
* docs/html/documentation.html: Add link for policy based
associative containers docs.
* docs/html/ext/pb_assoc/Std_hash_set_impl.jpg: New.
* docs/html/ext/pb_assoc/acks.html: New.
* docs/html/ext/pb_assoc/balls_and_bins.jpg: New.
* docs/html/ext/pb_assoc/basic_assoc_cntnr.html: New.
* docs/html/ext/pb_assoc/basic_assoc_cntnr_compound_data.html: New.
* docs/html/ext/pb_assoc/basic_assoc_cntnr_no_data.html: New.
* docs/html/ext/pb_assoc/basic_ds_tag.html: New.
* docs/html/ext/pb_assoc/basic_hash_assoc_cntnr.html: New.
* docs/html/ext/pb_assoc/basic_hash_ds_tag.html: New.
* docs/html/ext/pb_assoc/basic_invalidation_guarantee.html: New.
* docs/html/ext/pb_assoc/basic_ms_tag.html: New.
* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr.html: New.
* docs/html/ext/pb_assoc/
basic_tree_assoc_cntnr_const_node_iterator.html: New.
* docs/html/ext/pb_assoc/
basic_tree_assoc_cntnr_node_iterator.html: New.
* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev.html: New.
* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev_it.html: New.
* docs/html/ext/pb_assoc/basic_tree_ds_tag.html: New.
* docs/html/ext/pb_assoc/cc_hash_assoc_cntnr.html: New.
* docs/html/ext/pb_assoc/cc_hash_ds_tag.html: New.
* docs/html/ext/pb_assoc/
cc_hash_max_collision_check_resize_trigger.html: New.
* docs/html/ext/pb_assoc/cc_hash_policy_cd.jpg: New.
* docs/html/ext/pb_assoc/cd.jpg: New.
* docs/html/ext/pb_assoc/component_requirements.html: New.
* docs/html/ext/pb_assoc/compound_data_enabled_ms_tag.html: New.
* docs/html/ext/pb_assoc/compound_data_type.html: New.
* docs/html/ext/pb_assoc/compound_ds_tag.html: New.
* docs/html/ext/pb_assoc/concepts.html: New.
* docs/html/ext/pb_assoc/contact.html: New.
* docs/html/ext/pb_assoc/counter_update_metadata.html: New.
* docs/html/ext/pb_assoc/counter_update_policy.html: New.
* docs/html/ext/pb_assoc/data_enabled_ms_tag.html: New.
* docs/html/ext/pb_assoc/design.html: New.
* docs/html/ext/pb_assoc/different_underlying_dss.jpg: New.
* docs/html/ext/pb_assoc/direct_mask_range_hashing.html: New.
* docs/html/ext/pb_assoc/direct_mod_range_hashing.html: New.
* docs/html/ext/pb_assoc/disclaimer.html: New.
* docs/html/ext/pb_assoc/ds_gen.html: New.
* docs/html/ext/pb_assoc/ds_tag_cd.jpg: New.
* docs/html/ext/pb_assoc/ds_traits.html: New.
* docs/html/ext/pb_assoc/embedded_lists_1.jpg: New.
* docs/html/ext/pb_assoc/embedded_lists_2.jpg: New.
* docs/html/ext/pb_assoc/examples.html: New.
* docs/html/ext/pb_assoc/exception_guarantees_specifics.html: New.
* docs/html/ext/pb_assoc/find_invalidation_guarantee.html: New.
* docs/html/ext/pb_assoc/find_iterators_cd.jpg: New.
* docs/html/ext/pb_assoc/find_iterators_range_ops_1.jpg: New.
* docs/html/ext/pb_assoc/find_iterators_range_ops_2.jpg: New.
* docs/html/ext/pb_assoc/generics.html: New.
* docs/html/ext/pb_assoc/gp_hash_assoc_cntnr.html: New.
* docs/html/ext/pb_assoc/gp_hash_ds_tag.html: New.
* docs/html/ext/pb_assoc/gp_hash_policy_cd.jpg: New.
* docs/html/ext/pb_assoc/hash_and_probe_general.html: New.
* docs/html/ext/pb_assoc/hash_based_containers.html: New.
* docs/html/ext/pb_assoc/hash_cd.jpg: New.
* docs/html/ext/pb_assoc/hash_exponential_size_policy.html: New.
* docs/html/ext/pb_assoc/hash_fn.html: New.
* docs/html/ext/pb_assoc/hash_load_check_resize_trigger.html: New.
* docs/html/ext/pb_assoc/hash_policies.html: New.
* docs/html/ext/pb_assoc/hash_policy_cd.jpg: New.
* docs/html/ext/pb_assoc/hash_prime_size_policy.html: New.
* docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram.jpg: New.
* docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram2.jpg: New.
* docs/html/ext/pb_assoc/hash_ranged_hash_range_hashing_fns.jpg: New.
* docs/html/ext/pb_assoc/hash_standard_resize_policy.html: New.
* docs/html/ext/pb_assoc/home.html: New.
* docs/html/ext/pb_assoc/index.html: New.
* docs/html/ext/pb_assoc/insert_resize_sequence_diagram1.jpg: New.
* docs/html/ext/pb_assoc/insert_resize_sequence_diagram2.jpg: New.
* docs/html/ext/pb_assoc/insert_resize_sequence_diagram3.jpg: New.
* docs/html/ext/pb_assoc/insert_type_methods.html: New.
* docs/html/ext/pb_assoc/interface.html: New.
* docs/html/ext/pb_assoc/interval_node_invariants.jpg: New.
* docs/html/ext/pb_assoc/introduction.html: New.
* docs/html/ext/pb_assoc/invalidation_guarantee_cd.jpg: New.
* docs/html/ext/pb_assoc/invalidation_guarantee_erase.jpg: New.
* docs/html/ext/pb_assoc/lib_download.html: New.
* docs/html/ext/pb_assoc/linear_probe_fn.html: New.
* docs/html/ext/pb_assoc/list_updates.html: New.
* docs/html/ext/pb_assoc/lu_assoc_cntnr.html: New.
* docs/html/ext/pb_assoc/lu_based_containers.html: New.
* docs/html/ext/pb_assoc/lu_cd.jpg: New.
* docs/html/ext/pb_assoc/lu_ds_tag.html: New.
* docs/html/ext/pb_assoc/lu_ops.jpg: New.
* docs/html/ext/pb_assoc/mmap_value_utils.html: New.
* docs/html/ext/pb_assoc/motivation.html: New.
* docs/html/ext/pb_assoc/move_to_front_update_metadata.html: New.
* docs/html/ext/pb_assoc/move_to_front_update_policy.html: New.
* docs/html/ext/pb_assoc/ms_cd.jpg: New.
* docs/html/ext/pb_assoc/ms_gen.html: New.
* docs/html/ext/pb_assoc/ms_tag_cd.jpg: New.
* docs/html/ext/pb_assoc/ms_traits.html: New.
* docs/html/ext/pb_assoc/node_invariant_invalidations.jpg: New.
* docs/html/ext/pb_assoc/node_invariants.html: New.
* docs/html/ext/pb_assoc/node_invariants.jpg: New.
* docs/html/ext/pb_assoc/non_unique_mapping.html: New.
* docs/html/ext/pb_assoc/non_unique_mapping_containers.jpg: New.
* docs/html/ext/pb_assoc/null_data_type.html: New.
* docs/html/ext/pb_assoc/null_hash_fn.html: New.
* docs/html/ext/pb_assoc/null_probe_fn.html: New.
* docs/html/ext/pb_assoc/order_by_key.html: New.
* docs/html/ext/pb_assoc/order_statistics_key.html: New.
* docs/html/ext/pb_assoc/order_statistics_key_cmp.html: New.
* docs/html/ext/pb_assoc/order_statistics_node_updator.html: New.
* docs/html/ext/pb_assoc/ov_tree_ds_tag.html: New.
* docs/html/ext/pb_assoc/overview.html: New.
* docs/html/ext/pb_assoc/pb_assoc_ex.html: New.
* docs/html/ext/pb_assoc/portability.html: New.
* docs/html/ext/pb_assoc/quadratic_probe_fn.html: New.
* docs/html/ext/pb_assoc/range_invalidation_guarantee.html: New.
* docs/html/ext/pb_assoc/rank_node_invariants.jpg: New.
* docs/html/ext/pb_assoc/rationale_null_node_updator.jpg: New.
* docs/html/ext/pb_assoc/rb_tree_ds_tag.html: New.
* docs/html/ext/pb_assoc/reference_iterator.jpg: New.
* docs/html/ext/pb_assoc/references.html: New.
* docs/html/ext/pb_assoc/regression_tests.html: New.
* docs/html/ext/pb_assoc/resize_general.html: New.
* docs/html/ext/pb_assoc/resize_policies.html: New.
* docs/html/ext/pb_assoc/resize_policy_cd.jpg: New.
* docs/html/ext/pb_assoc/restoring_node_invariants.jpg: New.
* docs/html/ext/pb_assoc/sample_node_updator.hpp: New.
* docs/html/ext/pb_assoc/sample_probe_fn.hpp: New.
* docs/html/ext/pb_assoc/sample_probe_fn.html: New.
* docs/html/ext/pb_assoc/sample_range_hashing.hpp: New.
* docs/html/ext/pb_assoc/sample_range_hashing.html: New.
* docs/html/ext/pb_assoc/sample_ranged_hash_fn.hpp: New.
* docs/html/ext/pb_assoc/sample_ranged_hash_fn.html: New.
* docs/html/ext/pb_assoc/sample_ranged_probe_fn.hpp: New.
* docs/html/ext/pb_assoc/sample_ranged_probe_fn.html: New.
* docs/html/ext/pb_assoc/sample_resize_policy.hpp: New.
* docs/html/ext/pb_assoc/sample_resize_policy.html: New.
* docs/html/ext/pb_assoc/sample_resize_trigger.hpp: New.
* docs/html/ext/pb_assoc/sample_size_policy.hpp: New.
* docs/html/ext/pb_assoc/sample_update_policy.hpp: New.
* docs/html/ext/pb_assoc/size_policies_general.html: New.
* docs/html/ext/pb_assoc/splay_tree_ds_tag.html: New.
* docs/html/ext/pb_assoc/timing_tests.html: New.
* docs/html/ext/pb_assoc/toc.html: New.
* docs/html/ext/pb_assoc/tree_assoc_cntnr.html: New.
* docs/html/ext/pb_assoc/
tree_assoc_cntnr_const_node_iterator.html: New.
* docs/html/ext/pb_assoc/tree_assoc_cntnr_node_iterator.html: New.
* docs/html/ext/pb_assoc/tree_based_containers.html: New.
* docs/html/ext/pb_assoc/tree_cd.jpg: New.
* docs/html/ext/pb_assoc/trigger_policies_general.html: New.
* docs/html/ext/pb_assoc/tutorial.html: New.
* docs/html/ext/pb_assoc/update_seq_diagram.jpg: New.
* include/Makefile.am: Add assoc_srcdir, assoc_builddir, assoc_subdir,
assoc_headers.
* include/Makefile.in: Regenerate.
* include/ext/typelist.h: New.
* include/ext/pb_assoc/assoc_cntnr.hpp: New.
* include/ext/pb_assoc/data_type.hpp: New.
* include/ext/pb_assoc/ds_trait.hpp: New.
* include/ext/pb_assoc/exception.hpp: New.
* include/ext/pb_assoc/hash_policy.hpp: New.
* include/ext/pb_assoc/lu_policy.hpp: New.
* include/ext/pb_assoc/ms_trait.hpp: New.
* include/ext/pb_assoc/tree_policy.hpp: New.
* include/ext/pb_assoc/trivial_iterator_def.hpp: New.
* include/ext/pb_assoc/detail/assoc_cntnr_base.hpp: New.
* include/ext/pb_assoc/detail/cond_dealtor.hpp: New.
* include/ext/pb_assoc/detail/constructors_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/ds_trait_imp.hpp: New.
* include/ext/pb_assoc/detail/hash_types_traits.hpp: New.
* include/ext/pb_assoc/detail/map_debug_base.hpp: New.
* include/ext/pb_assoc/detail/mapping_level_imp.hpp: New.
* include/ext/pb_assoc/detail/ms_category_imp.hpp: New.
* include/ext/pb_assoc/detail/ms_trait_imp.hpp: New.
* include/ext/pb_assoc/detail/order_statistics_imp.hpp: New.
* include/ext/pb_assoc/detail/standard_policies.hpp: New.
* include/ext/pb_assoc/detail/standard_sizes.hpp: New.
* include/ext/pb_assoc/detail/type_utils.hpp: New.
* include/ext/pb_assoc/detail/typelist.hpp: New.
* include/ext/pb_assoc/detail/types_traits.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/
constructors_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/d_extract_key.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/
d_find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/
d_insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/extract_key.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/
insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_assoc_cntnr/
iterators_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
constructors_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
resize_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
constructors_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
node_iteration_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
policy_access_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
r_erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
r_range_iteration_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
range_iteration_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
split_join_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/
bin_search_tree_.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/
cond_dtor_entry_dealtor.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/
cond_key_dtor_entry_dealtor.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/debug_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/find_iterators.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/
iterators_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/node_iterators.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/
r_erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/rotate_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/bin_search_tree_/
split_join_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_hash_assoc_cntnr/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/cc_ht_map_.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/cmp_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
cond_key_dtor_entry_dealtor.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
constructor_destructor_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/debug_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
debug_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
debug_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/entry_list_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
erase_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
erase_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
find_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
find_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
insert_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
insert_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/iterators_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
policy_access_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/resize_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
resize_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/
resize_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/size_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/cc_ht_map_/standard_policies.hpp: New.
* include/ext/pb_assoc/detail/eq_fn/eq_by_less.hpp: New.
* include/ext/pb_assoc/detail/eq_fn/hash_eq_fn.hpp: New.
* include/ext/pb_assoc/detail/gp_hash_assoc_cntnr/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
constructor_destructor_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/debug_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
debug_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
debug_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
erase_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
erase_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
find_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
find_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/gp_ht_map_.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
insert_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
insert_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/iterator_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
policy_access_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/resize_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
resize_no_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/gp_ht_map_/
resize_store_hash_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/
direct_mask_range_hashing_imp.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/
direct_mod_range_hashing_imp.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/
mask_based_range_hashing.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/probe_fn_base.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/ranged_hash_fn.hpp: New.
* include/ext/pb_assoc/detail/hash_fn/ranged_probe_fn.hpp: New.
* include/ext/pb_assoc/detail/lu_assoc_cntnr/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_assoc_cntnr/
policy_access_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/debug_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/iterators_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/lu_map_.hpp: New.
* include/ext/pb_assoc/detail/lu_map_/policy_access_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/lu_policy/
counter_lu_metadata_imp.hpp: New.
* include/ext/pb_assoc/detail/lu_policy/counter_lu_policy_imp.hpp: New.
* include/ext/pb_assoc/detail/lu_policy/mtf_lu_policy_imp.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/cond_dtor.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/
constructors_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/debug_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/iterators_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/node_iterators.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/ov_tree_map_.hpp: New.
* include/ext/pb_assoc/detail/ov_tree_map_/split_join_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/
constructors_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/debug_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/node.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/rb_tree_.hpp: New.
* include/ext/pb_assoc/detail/rb_tree_map_/split_join_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/resize_policy/
cc_hash_max_collision_resize_trigger_imp.hpp: New.
* include/ext/pb_assoc/detail/resize_policy/
hash_exponential_size_policy_imp.hpp: New.
* include/ext/pb_assoc/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: New.
* include/ext/pb_assoc/detail/resize_policy/
hash_prime_size_policy_imp.hpp: New.
* include/ext/pb_assoc/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: New.
* include/ext/pb_assoc/detail/resize_policy/
ht_prime_size_policy_imp.hpp: New.
* include/ext/pb_assoc/detail/resize_policy/size_base.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/
constructors_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/debug_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/node.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/splay_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/splay_tree_.hpp: New.
* include/ext/pb_assoc/detail/splay_tree_/split_join_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/tree_assoc_cntnr/
constructor_destructor_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/tree_policy/
null_node_updator_imp.hpp: New.
* include/ext/pb_assoc/detail/tree_policy/
order_statistics_imp.hpp: New.
* include/ext/pb_assoc/detail/typelist/typelist_append.hpp: New.
* include/ext/pb_assoc/detail/typelist/typelist_apply.hpp: New.
* include/ext/pb_assoc/detail/typelist/typelist_at_index.hpp: New.
* include/ext/pb_assoc/detail/typelist/typelist_contains.hpp: New.
* include/ext/pb_assoc/detail/typelist/typelist_filter.hpp: New.
* include/ext/pb_assoc/detail/typelist/typelist_transform.hpp: New.
* include/ext/pb_assoc/detail/typelist/
typelist_typelist_append.hpp: New.
* include/ext/pb_assoc/detail/unordered_iterator/
const_find_iterator.hpp: New.
* include/ext/pb_assoc/detail/unordered_iterator/
const_iterator.hpp: New.
* include/ext/pb_assoc/detail/unordered_iterator/
find_iterator.hpp: New.
* include/ext/pb_assoc/detail/unordered_iterator/iterator.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
constructor_destructor_and_related.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
erase_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
erase_if_pred.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/find_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/info_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
insert_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
invalidation_guarantee_selector.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
it_value_type_traits.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/iterator.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
iterator_fn_imps.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/ref_pair.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
value_type_adapter.hpp: New.
* include/ext/pb_assoc/detail/value_type_adapter/
value_type_traits.hpp: New.
* testsuite/Makefile.am (CLEANFILES): Add .o, .dat, .cc.
* testsuite/Makefile.in: Regenerate.
* testsuite/testsuite_common_types.h: New.
* testsuite/testsuite_visualization.h: New.
* testsuite/ext/pb_assoc/example/basic_map.cc: New.
* testsuite/ext/pb_assoc/example/basic_multimap.cc: New.
* testsuite/ext/pb_assoc/example/basic_set.cc: New.
* testsuite/ext/pb_assoc/example/ds_traits.cc: New.
* testsuite/ext/pb_assoc/example/erase_if.cc: New.
* testsuite/ext/pb_assoc/example/extract_key.cc: New.
* testsuite/ext/pb_assoc/example/hash_find_neg.cc: New.
* testsuite/ext/pb_assoc/example/hash_illegal_resize.cc: New.
* testsuite/ext/pb_assoc/example/hash_initial_size.cc: New.
* testsuite/ext/pb_assoc/example/hash_load_set_change.cc: New.
* testsuite/ext/pb_assoc/example/hash_mod.cc: New.
* testsuite/ext/pb_assoc/example/hash_resize.cc: New.
* testsuite/ext/pb_assoc/example/hash_resize_neg.cc: New.
* testsuite/ext/pb_assoc/example/hash_shift_mask.cc: New.
* testsuite/ext/pb_assoc/example/mapping_level.cc: New.
* testsuite/ext/pb_assoc/example/mapping_level_neg.cc: New.
* testsuite/ext/pb_assoc/example/ms_traits.cc: New.
* testsuite/ext/pb_assoc/example/ranged_hash.cc: New.
* testsuite/ext/pb_assoc/example/store_hash.cc: New.
* testsuite/ext/pb_assoc/example/tree_intervals.cc: New.
* testsuite/ext/pb_assoc/example/tree_join.cc: New.
* testsuite/ext/pb_assoc/example/tree_order_statistics.cc: New.
* testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc: New.
* testsuite/ext/pb_assoc/example/tree_split.cc: New.
* testsuite/performance/20_util/allocator/(insert.cc,
insert_insert.cc, list_sort_search.cc, map_mt_find.cc, map_thread.cc,
producer_consumer.cc): Recast to use typelists and move to...
* testsuite/performance/23_containers/find/map.cc: New.
* testsuite/performance/23_containers/index/map.cc: New.
* testsuite/performance/23_containers/insert/associative.cc: New.
* testsuite/performance/23_containers/insert/sequence.cc: New.
* testsuite/performance/23_containers/insert_erase/associative.cc: New.
* testsuite/performance/23_containers/producer_consumer/
(associative.cc, sequence.cc): New.
* testsuite/performance/23_containers/sort_search/list.cc: New.
* testsuite/performance/23_containers/container_benchmark.cc: Remove.
* testsuite/performance/23_containers/map_create_fill.cc: Move...
* testsuite/performance/23_containers/create/map.cc: ...here.
* testsuite/performance/23_containers/set_create_from_sorted.cc: Move.
* testsuite/performance/23_containers/create_from_sorted/set.cc: here.
* testsuite/performance/23_containers/list_create_fill_sort.cc: Move...
* testsuite/performance/23_containers/create_sort/list.cc: ...here.
* testsuite/performance/23_containers/set_insert_from_sorted.cc: Move.
* testsuite/performance/23_containers/insert_from_sorted/set.cc: here.
Co-Authored-By: Ami Tavory <pbassoc@gmail.com>
From-SVN: r101354
2005-06-27 15:33:38 +00:00
Paolo Carlini
6be8b52474
revert: re PR libstdc++/19495 (basic_string::_M_rep() can produce an unnaturally aligned pointer to _Rep)
...
2005-05-28 Paolo Carlini <pcarlini@suse.de>
Revert:
2005-05-18 Paolo Carlini <pcarlini@suse.de>
Nathan Myers <ncm@cantrip.org>
PR libstdc++/19495
* include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
size_type instead of char and rename to _Raw_alloc.
* include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
Use the above.
* src/bitmap_allocator.cc: Add instantiation for size_type.
* src/mt_allocator.cc: Likewise.
* src/pool_allocator.cc: Likewise.
* include/ext/array_allocator.h: Tweak slightly, avoid assuming
the existence of an _Array::begin() and size() members.
* testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
of size_type, instead of char, thus avoiding problems with
rebinds, not treated correctly by array_allocator.
From-SVN: r100304
2005-05-28 21:57:03 +00:00
Benjamin Kosnik
d2763ab5f1
re PR libstdc++/20534 (Erroneous #include of <cassert>)
...
2005-05-27 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/20534
* include/debug/debug.h: Forwarding header, that pulls in details
only if in debug mode.
* include/debug/macros.h: ...transfer all the internal macros here.
* include/debug/functions.h: ...transfer all the functions here.
* include/debug/safe_iterator.h: Add functions.h, macros.h includes.
* include/debug/safe_sequence.h: Same.
* include/debug/vector: Tweak.
* include/Makefile.am (debug_headers): Add new includes.
* include/Makefile.in: Regenerate.
* testsuite/17_intro/no_assert_neg.cc: Add.
* include/ext/hash_set: Add debug mode include.
* include/ext/hash_map: Same.
* include/debug/hash_map: Fix included files to match actual files.
* include/debug/hash_set: Same.
From-SVN: r100255
2005-05-27 15:01:45 +00:00
Paolo Carlini
66143232bc
re PR libstdc++/19495 (basic_string::_M_rep() can produce an unnaturally aligned pointer to _Rep)
...
2005-05-18 Paolo Carlini <pcarlini@suse.de>
Nathan Myers <ncm@cantrip.org>
PR libstdc++/19495
* include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
size_type instead of char and rename to _Raw_alloc.
* include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
Use the above.
* src/bitmap_allocator.cc: Add instantiation for size_type.
* src/mt_allocator.cc: Likewise.
* src/pool_allocator.cc: Likewise.
* include/ext/array_allocator.h: Tweak slightly, avoid assuming
the existence of an _Array::begin() and size() members.
* testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
of size_type, instead of char, thus avoiding problems with
rebinds, not treated correctly by array_allocator.
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
From-SVN: r99933
2005-05-18 22:11:24 +00:00
Paolo Carlini
a9dd5a466a
PR libstdc++/21244 (cont)
...
2005-04-28 Paolo Carlini <pcarlini@suse.de>
Gabriel Dos Reis <gdr@integrable-solutions.net>
PR libstdc++/21244 (cont)
* include/bits/cpp_type_traits.h (struct __traitor): Convert
to bool the values.
* include/bits/stl_algo.h: Convert _S_threshold to int.
* include/bits/stl_bvector.h: Revert previous change, convert
_S_word_bit to int.
* include/debug/formatter.h: Convert __max_parameters to
size_t.
* include/ext/mt_allocator.h: Likewise for _S_chunk_size.
* include/ext/pool_allocator.h: Likewise for _S_max_bytes and
_S_align.
* include/ext/rope: Likewise for _S_alloc_granularity; convert
_S_max_rope_depth to int.
* include/ext/ropeimpl.h: Convert _S_path_cache_len to int;
_S_max_rope_depth to int; _S_copy_max to size_t.
Co-Authored-By: Gabriel Dos Reis <gdr@integrable-solutions.net>
From-SVN: r98915
2005-04-28 07:50:48 +00:00
Benjamin Kosnik
57b11c9654
2005-04-14 Benjamin Kosnik <bkoz@redhat.com>
...
* include/ext/bitmap_allocator.h
(__gnu_cxx::free_list::_M_get_mutex): New.
(__gnu_cxx::free_list::_M_get_free_list): New.
(__gnu_cxx::free_list::_S_bfl_mutex): Remove.
(__gnu_cxx::free_list::_S_free_list): Remove.
* src/bitmap_allocator.cc: Same.
* config/linker-map.gnu: Remove free_list and mutex export.
From-SVN: r98173
2005-04-15 04:07:45 +00:00
Benjamin Kosnik
821503dbd6
pod_char_traits.h (__gnu_cxx::character): Add char_type.
...
2005-04-14 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pod_char_traits.h (__gnu_cxx::character): Add char_type.
(character::to): New.
(character::from): New.
(operator==): Add state parameter.
(operator<): Same.
(char_traits::copy): Use std::copy.
(char_traits::assign): Use std::fill_n.
(char_traits::to_char_type): Use character::from.
(char_traits::to_int_type): Use character::to.
* testsuite/testsuite_character.h (__gnu_test::character): Remove.
(__gnu_test::conversion_state): Remove.
(__gnu_test::pod_char): Remove.
(pod_char): New typedef.
(pod_uchar): New typedef.
(pod_ushort): New typedef.
* testsuite/testsuite_character.cc: Fixups.
* testsuite/21_strings/basic_string/inserters_extractors/pod/
10081-in.cc: Same.
* testsuite/21_strings/basic_string/inserters_extractors/pod/
10081-out.cc: Same.
* testsuite/22_locale/numpunct/members/pod/1.cc: Same.
* testsuite/22_locale/numpunct/members/pod/2.cc: Same.
* testsuite/27_io/basic_filebuf/close/12790-1.cc: Same.
* testsuite/27_io/basic_filebuf/open/12790-1.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Same.
* testsuite/27_io/basic_ios/imbue/14072.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/pod/
3983-1.cc: Same.
* testsuite/27_io/basic_istream/extractors_character/pod/
3983-2.cc: Same.
* testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
* testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
From-SVN: r98165
2005-04-15 02:06:26 +00:00
Paolo Carlini
c0736a9ddb
cpp_type_traits.h: Add types to the structs thus making type_traits.h redundant...
...
2005-01-31 Paolo Carlini <pcarlini@suse.de>
Gabriel Dos Reis <gdr@integrable-solutions.net>
* include/bits/cpp_type_traits.h: Add types to the structs thus
making type_traits.h redundant; exploit new __truth_type and
__traitor helpers.
* include/bits/type_traits.h: Remove.
* include/Makefile.am: Update.
* include/Makefile.in: Regenerate.
* include/backward/tempbuf.h: Include cpp_type_traits.h instead.
* include/bits/basic_string.h (replace(iterator, iterator,
_InputIterator, _InputIterator), _S_construct(_InIterator,
_InIterator, const _Alloc&)): Use __is_integer instead.
* include/bits/stl_bvector.h (vector(_InputIterator,
_InputIterator, const allocator_type&), assign(_InputIterator,
_InputIterator), insert(iterator, _InputIterator, _InputIterator)):
Likewise.
* include/bits/stl_construct.h (_Destroy(_ForwardIterator,
_ForwardIterator)): Use __is_scalar.
* include/bits/stl_deque.h (deque(_InputIterator, _InputIterator,
const allocator_type&), assign(_InputIterator, _InputIterator),
insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
* include/bits/stl_list.h (assign(_InputIterator, _InputIterator),
insert(iterator, _InputIterator, _InputIterator)): Likewise.
* include/bits/stl_tempbuf.h (_Temporary_buffer(_ForwardIterator,
_ForwardIterator)): Use __is_scalar.
* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
_InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
_ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
_Size, const _Tp&)): Likewise.
* include/bits/stl_vector.h (vector(_InputIterator, _InputIterator,
const allocator_type&), assign(_InputIterator, _InputIterator),
insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
* include/debug/debug.h (__valid_range(const _InputIterator&,
const _InputIterator&)): Use __is_integer.
* include/ext/slist (assign(_InputIterator, _InputIterator)): Likewise.
* include/std/std_string.h: Include cpp_type_traits.h instead.
Co-Authored-By: Gabriel Dos Reis <gdr@integrable-solutions.net>
From-SVN: r94484
2005-01-31 16:22:01 +00:00
Paolo Carlini
b929615a7c
mt_allocator.h (struct __per_type_pool_policy<,, [...]): Scale _M_chunk_size too with sizeof(_Tp)...
...
2005-01-26 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h
(struct __per_type_pool_policy<,, false>::_S_get_pool,
struct __per_type_pool_policy<,, true>::_S_get_pool): Scale
_M_chunk_size too with sizeof(_Tp), otherwise the allocator
breaks down as soon as sizeof(_Tp) >~ _S_chunk_size / 128;
reduce to 64 the multiplier for _M_max_bytes (safer wrt
_Binmap_type being a short); trivial reformattings.
* testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: New.
From-SVN: r94268
2005-01-26 16:34:58 +00:00
Loren J. Rittle
75aa3f658c
array_allocator.h (array_allocator<>::allocate): Avoid __used.
...
* include/ext/array_allocator.h (array_allocator<>::allocate):
Avoid __used. Use __array_used instead.
From-SVN: r93923
2005-01-19 21:59:55 +00:00
Jonathan Wakely
412dc870cb
rope: Qualify calls to std::copy() by sequence_buffer.
...
2005-01-16 Jonathan Wakely <redi@gcc.gnu.org>
* include/ext/rope: Qualify calls to std::copy() by sequence_buffer.
* testsuite/ext/rope/4.cc: Add.
From-SVN: r93736
2005-01-16 19:16:27 +00:00
Benjamin Kosnik
825bd0e1e8
acinclude.m4: Remove CCODECVT_H.
...
2005-01-07 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4: Remove CCODECVT_H.
* configure: Regenerate.
* include/Makefile.am (host_headers_extra): Move to...
(ext_headers): ...here.
* include/Makefile.in: Regenerate.
* include/ext/enc_filebuf: Remove enc_filebuf, consolidate
enc_traits to...
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
* include/ext/codecvt_specializations.h: ...here. Remove
_GLIBCXX_USE___ENC_TRAITS.
(__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
(enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
namespace.
* config/locale/generic/codecvt_specializations.h: Remove.
* include/bits/codecvt.h: Remove codecvt_specializations.h include.
* src/codecvt.cc: Remove __enc_traits::_S_max_size.
From-SVN: r93062
2005-01-07 19:34:46 +00:00
Dhruv Matani
4c10d7f02f
bitmap_allocator.h: Make doxygen style comments for internal functions and classes.
...
2004-12-19 Dhruv Matani <dhruvbird@gmx.net>
* include/ext/bitmap_allocator.h: Make doxygen style comments for
internal functions and classes.
From-SVN: r92376
2004-12-19 11:17:40 +00:00
Richard Henderson
4ec3604f50
* include/ext/malloc_allocator.h: Include cstdlib.
...
From-SVN: r91737
2004-12-04 16:25:18 -08:00
Benjamin Kosnik
0aa06b18fc
doxygroups.cc: Add std::tr1 namespace.
...
2004-11-23 Benjamin Kosnik <bkoz@redhat.com>
* docs/doxygen/doxygroups.cc: Add std::tr1 namespace.
* docs/doxygen/run_doxygen: Renames for std::tr1.
* docs/doxygen/user.cfg.in: Add cxxabi.h.
* include/bits/*.tcc: Add file markup.
* include/bits/allocator.h: Add link to allocator.html.
* include/bits/atomicity.h: Add file markup.
* include/bits/concurrence.h: Same.
* include/bits/functexcept.h: Same.
* include/ext*: Adjust file markup, remove GCC3 bits.
* include/std/*: Adjust file markup, remove bits about renamed files.
* libsupc++/cxxabi.h: Add file markup.
* testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust line numbers.
From-SVN: r91135
2004-11-24 04:11:23 +00:00
Benjamin Kosnik
00aca6e83a
locale_facets.h (isspace, [...]): Add doxygen markup.
...
2004-11-22 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h (isspace, isprint, isupper,
islower, isalpha, isdigit, ispunct, isxdigit, isalnum, isgraph,
toupper, tolower): Add doxygen markup.
(codecvt_byname, ctype_byname, numpunct_byname, collate_byname,
time_get_byname, time_put_byname, moneypunct_byname,
messages_byname): Same.
* include/std/std_fstream.h: Remove superfluous markup.
* include/std/std_sstream.h: Same.
* include/std/std_streambuf.h: Same.
* include/ext/enc_filebuf.h: Adjust markup.
* include/ext/stdio_filebuf.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/bits/codecvt.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
* include/tr1/array: Add markup.
* include/tr1/tuple: Same.
* docs/doxygen/run_doxygen: Print arguments.
* docs/doxygen/user.cfg.in: Tweaks.
From-SVN: r91080
2004-11-23 09:18:41 +00:00
Jonathan Wakely
20fff8cd7c
basic_string.h, [...]: Doxygen fixes.
...
2004-11-19 Jonathan Wakely <redi@gcc.gnu.org>
* include/bits/basic_string.h, include/bits/locale_classes.h,
include/bits/valarray_after.h, include/bits/valarray_before.h,
include/ext/stdio_sync_filebuf.h, include/std/std_algorithm.h,
include/std/std_functional.h, include/std/std_memory.h,
include/std/std_numeric.h: Doxygen fixes.
From-SVN: r90979
2004-11-21 13:16:24 +00:00
Benjamin Kosnik
6309eefc3d
re PR libstdc++/17218 (unknown subjects in generated libstdc++ manpages)
...
2004-11-05 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/17218
PR libstdc++/17223
* docs/doxygen/filter: Remove.
* docs/doxygen/filter.sed: Remove.
* docs/doxygen/mainpage.html: Add link to functions.
* docs/doxygen/run_doxygen: Changes due to new source filtering.
* docs/doxygen/user.cfg.in: Update to doxygen 1.3.9.1, tweak.
* include/bits/allocator.h: Tweaks for doxygen.
* include/bits/char_traits.h: Same.
* include/bits/codecvt.h: Same.
* include/bits/concurrence.h: Same.
* include/bits/locale_facets.h: Same.
* include/ext/array_allocator.h: Same.
* include/ext/debug_allocator.h: Same.
* include/ext/malloc_allocator.h: Same.
* include/ext/mt_allocator.h: Same.
* include/ext/new_allocator.h: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/std/std_memory.h: Same.
* include/tr1/array: Same.
* include/tr1/tuple: Same.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
From-SVN: r90137
2004-11-05 19:58:03 +00:00
Benjamin Kosnik
6571df13b4
mt_allocator.h (__common_pool_policy): Add template template parameter for pool class type.
...
2004-10-28 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/mt_allocator.h (__common_pool_policy): Add template
template parameter for pool class type.
(__per_type_pool_policy): Same.
(__mt_allocator): Don't inherit policy. Qualify policy_type calls.
* testsuite/ext/mt_allocator/check_deallocate_null.cc: Fix.
* testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: Same.
* testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
* testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
* testsuite/ext/mt_allocator/deallocate_local-2.cc: Same.
* testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
* testsuite/ext/mt_allocator/instantiate.cc: Same.
* testsuite/ext/mt_allocator/tune-1.cc: Same.
* testsuite/ext/mt_allocator/tune-2.cc: Same.
* testsuite/ext/mt_allocator/tune-3.cc: Same.
* testsuite/ext/mt_allocator/tune-4.cc: Same.
From-SVN: r89776
2004-10-28 20:46:08 +00:00
Benjamin Kosnik
210d7a8f70
array_allocator.h (array::allocate): Check for valid array object, use its size member function directly.
...
2004-10-26 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/array_allocator.h (array::allocate): Check for valid
array object, use its size member function directly.
* testsuite/ext/array_allocator/3.cc: New.
* docs/html/20_util/allocator.html: Add docs.
From-SVN: r89573
2004-10-26 06:37:10 +00:00
Paolo Carlini
a063e891bd
bitmap_allocator.h (allocate): Throw std::bad_alloc when n > max_size().
...
2004-10-20 Paolo Carlini <pcarlini@suse.de>
* include/ext/bitmap_allocator.h (allocate): Throw std::bad_alloc
when n > max_size().
* include/ext/malloc_allocator.h (allocate): Likewise.
* include/ext/mt_allocator.h (allocate): Likewise.
* include/ext/new_allocator.h (allocate): Likewise.
* include/ext/array_allocator.h: Use __throw_bad_alloc().
* include/ext/pool_allocator.h: Use __builtin_expect.
* testsuite/ext/array_allocator/check_allocate_max_size.cc: New.
* testsuite/ext/bitmap_allocator/check_allocate_max_size.cc: Likewise.
* testsuite/ext/malloc_allocator/check_allocate_max_size.cc: Likewise.
* testsuite/ext/mt_allocator/check_allocate_max_size.cc: Likewise.
* testsuite/ext/new_allocator/check_allocate_max_size.cc: Likewise.
* testsuite/ext/pool_allocator/check_allocate_max_size.cc: Likewise.
* testsuite/testsuite_allocator.h (check_allocate_max_size): New test.
From-SVN: r89351
2004-10-21 00:06:02 +00:00
Benjamin Kosnik
7befac7140
mt_allocator.h (__pool::_M_get_align): New.
...
2004-10-17 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/mt_allocator.h (__pool::_M_get_align): New.
(__mt_alloc::allocate): Use it.
* src/mt_allocator.cc (__pool::_M_reclaim_block): Use it.
(__pool::_M_reserve_block): Simplify block allocation.
From-SVN: r89171
2004-10-17 15:22:03 +00:00
Dhruv Matani
a815571193
bitmap_allocator.h: Change unsigned int -> size_t...
...
2004-10-17 Dhruv Matani <dhruvbird@gmx.net>
Paolo Carlini <pcarlini@suse.de>
* include/ext/bitmap_allocator.h: Change unsigned int -> size_t: this
makes the code 64-bit correct and also fixes (together with using at
the beginning a bitmap 2 * size_t bytes wide) alignment issues: now
8 is guaranteed, easily tunable to 16 via _BALLOC_ALIGN_BYTES.
Fix pthread-rope7.cc fail by nulling out __mini_vector<> destructor.
* src/bitmap_allocator.cc: Change to size_t.
* config/linker-map.gnu: Adjust.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r89170
2004-10-17 14:46:29 +00:00
Paolo Carlini
0d6b41f2dd
bitmap_allocator.h: Qualify ::operator delete.
...
2004-10-15 Paolo Carlini <pcarlini@suse.de>
* include/ext/bitmap_allocator.h: Qualify ::operator delete.
* src/bitmap_allocator.cc: Likewise.
* src/mt_allocator.cc: Use ::operator delete, not delete,
consistently with ::operator new.
* include/ext/bitmap_allocator.h (deallocate): Check for null
pointer.
* testsuite/ext/bitmap_allocator/check_deallocate_null.cc: New.
* testsuite/testsuite_allocator.h (check_deallocate_null): Add test.
From-SVN: r89089
2004-10-15 10:54:57 +00:00
Benjamin Kosnik
5d1b2a1e42
mt_allocator.h (__mt_alloc::deallocate): Check for null pointer.
...
2004-10-14 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/mt_allocator.h (__mt_alloc::deallocate): Check for
null pointer.
* include/ext/pool_allocator.h (debug_allocator::deallocate):
Check pointer value.
* include/ext/debug_allocator.h (debug_allocator::deallocate):
Throw exceptions, don't abort.
* include/ext/array_allocator.h
(array_allocator_base::deallocate): Remove unused parameters.
* testsuite/testsuite_allocator.h (check_deallocate_null): New.
* testsuite/ext/mt_allocator/check_deallocate_null.cc: New.
* testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: New.
* testsuite/ext/array_allocator/check_deallocate_null.cc: New.
* testsuite/ext/debug_allocator/check_deallocate_null.cc: New.
* testsuite/ext/malloc_allocator/check_deallocate_null.cc: New.
* testsuite/ext/new_allocator/check_deallocate_null.cc: New.
* testsuite/ext/pool_allocator/check_deallocate_null.cc: New.
* testsuite/testsuite_allocator.h (check_new): Add instance argument.
* testsuite/ext/array_allocator/check_new.cc: New.
From-SVN: r89060
2004-10-14 23:03:26 +00:00
Paolo Carlini
cff1f8d41e
bitmap_allocator.h (bitmap_allocator::_Alloc_block): Rename __unused to __M_unused.
...
2004-10-14 Paolo Carlini <pcarlini@suse.de>
* include/ext/bitmap_allocator.h (bitmap_allocator::_Alloc_block):
Rename __unused to __M_unused.
From-SVN: r89056
2004-10-14 21:44:13 +00:00
Benjamin Kosnik
11aaaa84ae
mt_allocator.h: Tweaks.
...
2004-10-14 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/mt_allocator.h: Tweaks.
* src/mt_allocator.cc: Same.
From-SVN: r89052
2004-10-14 21:05:24 +00:00
Dhruv Matani
1399eca190
bitmap_allocator.h: Clean-up add/remove functions.
...
2004-10-14 Dhruv Matani <dhruvbird@gmx.net>
* ext/bitmap_allocator.h: Clean-up add/remove functions.
* src/bitmap_allocator.cc: New file. Contains the out-of-line
function definitions, static initialization of variables, and
explicit instantiations needed for the allocator.
* src/Makefile.am: Add.
* src/Makefile.in: Regenerate.
* config/linker.map.gnu: Add the necessary symbols.
From-SVN: r89042
2004-10-14 17:52:18 +00:00
Paolo Carlini
cbb0dcef12
basic_string.tcc (_S_create): Use consistently the exponential policy, simplify.
...
2004-10-13 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.tcc (_S_create): Use consistently
the exponential policy, simplify.
* testsuite/performance/21_strings/string_append_2.cc: New.
* include/ext/array_allocator.h (allocate): Fix bad_alloc check.
* testsuite/ext/array_allocator/2.cc: Fix wrt 64-bit archs (in
that case sizeof(_Rep) == 24).
From-SVN: r88972
2004-10-13 08:58:41 +00:00
Benjamin Kosnik
5a1e5472f5
re PR libstdc++/17937 (Critical ~__pool troubles)
...
2004-10-11 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_deque.h: Correct for over-long lines.
2004-10-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/17937
* include/ext/mt_allocator.h (__pool::_M_destroy): New.
* src/mt_allocator.cc (__pool::~__pool): Change definitions to
_M_destroy.
* acconfig.h: Remove _GLIBCXX_USE___CXA_ATEXIT.
* acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): Remove.
* configure.ac: Remove call to GLIBCXX_ENABLE_CXA_EXIT.
* configure: Regenerate.
* config/linker-map.gnu: Tweak exports.
* docs/html/ext/mt_allocator.html: Update docs.
* testsuite/ext/mt_allocator/deallocate_global-2.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_global-4.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_local-2.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_local-4.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Fix.
From-SVN: r88913
2004-10-12 01:10:39 +00:00
Benjamin Kosnik
61b26514c2
PR libstdc++/16614 continued.
...
2004-10-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/16614 continued.
* include/ext/mt_allocator.h
(__per_type_pool_policy::_S_get_pool): Use saner defaults based on
specific type characteristics.
(__pool_base): Add constructor that takes a _Tune argument.
(__pool): Same.
* testsuite/ext/mt_allocator/tune-2.cc: Adjust default.
* testsuite/ext/mt_allocator/tune-4.cc: Same.
* testsuite/ext/mt_allocator/tune-3.cc: Same.
From-SVN: r88902
2004-10-11 20:26:53 +00:00
Joachim Kuebart
e55096f0ce
pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk): Deal properly with exceptions thrown by ::operator new(size_t).
...
2004-10-11 Joachim Kuebart <kuebart@mathematik.uni-ulm.de>
Paolo Carlini <pcarlini@suse.de>
* src/pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk):
Deal properly with exceptions thrown by ::operator new(size_t).
* testsuite/ext/pool_allocator/allocate_chunk.cc: New.
* include/ext/pool_allocator.h: Include <cstdlib>.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r88872
2004-10-11 08:19:35 +00:00
Benjamin Kosnik
3febde356c
tr1: New.
...
2004-10-07 Benjamin Kosnik <bkoz@redhat.com>
* include/tr1: New.
* include/tr1/array: New.
* include/Makefile.am (tr1_headers): New.
(stamp-tr1): New.
(install-headers): New.
(allstamped): Add stamp-tr1.
* include/ext/array_allocator.h: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* testsuite/ext/array_allocator/1.cc: New.
* testsuite/ext/array_allocator/2.cc: New.
From-SVN: r88711
2004-10-07 22:06:23 +00:00
Benjamin Kosnik
12cde21b12
re PR libstdc++/17780 (std::allocator vs. static init)
...
2004-10-05 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/17780
* include/ext/mt_allocator.h (__pool_base::_Tune): Add default
options as compile-time constant enums.
(__pool_base::_Tune::is_default): New.
(__pool_base::_Block_address): New.
(__pool_base): Rearrange data members.
(__pool::_M_reserve_memory): To _M_reserve_block.
(__pool::_M_reclaim_memory): To _M_reclaim_block.
(__pool::_Bin_record): Add _Block_address data member.
(__pool<false>): Add _M_thread_freelist_initial.
(__pool::~__pool): Declare.
(__common_pool_policy): Move static data member to...
(__common_pool_policy::_S_get_pool): ...here, make static local.
(__per_type_pool_policy): Move static data member to...
(__per_type_pool_policy::_S_get_pool): ...here, make static local.
(__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool.
Remove static member definitions. Use define for __default_policy.
* src/mt_allocator.cc: Same.
* config/linker-map.gnu: Don't export _S_get_pool. Renames.
* testsuite/ext/new_allocator: New.
* testsuite/ext/new_allocator/instantiate.cc: New.
* testsuite/ext/new_allocator/check_new.cc: New.
* testsuite/ext/new_allocator/deallocate_global.cc: New.
* testsuite/ext/new_allocator/deallocate_local.cc: New.
* testsuite/ext/mt_allocator/instantiate.cc: Instantiate all
template arguments.
* testsuite/ext/mt_allocator/deallocate_global-1.cc: New.
* testsuite/ext/mt_allocator/deallocate_global-2.cc: New.
* testsuite/ext/mt_allocator/deallocate_global-3.cc: New.
* testsuite/ext/mt_allocator/deallocate_global-4.cc: New.
* testsuite/ext/mt_allocator/deallocate_local-1.cc: New.
* testsuite/ext/mt_allocator/deallocate_local-2.cc: New.
* testsuite/ext/mt_allocator/deallocate_local-3.cc: New.
* testsuite/ext/mt_allocator/deallocate_local-4.cc: New.
* testsuite/ext/mt_allocator/deallocate.cc: New.
* testsuite/ext/malloc_allocator/deallocate.cc: New.
* testsuite/ext/malloc_allocator/deallocate_global.cc: New.
* testsuite/ext/malloc_allocator/deallocate_local.cc: New.
From-SVN: r88589
2004-10-06 04:22:42 +00:00
Benjamin Kosnik
35dc4c015a
re PR libstdc++/17259 (One more _S_leaf incorrectly qualified with _RopeRep:: in ropeimpl.h)
...
2004-09-02 Benjamin Kosnik <bkoz@redhat.com>
Leland Wang <llwang@infor.org>
PR libstdc++/17259
* include/ext/ropeimpl.h (rope::_S_compare): Use
_Rope_constants::_S_leaf.
Co-Authored-By: Leland Wang <llwang@infor.org>
From-SVN: r86973
2004-09-02 18:22:20 +00:00
Benjamin Kosnik
c0e01ad29c
re PR libstdc++/16848 (code in /ext/demangle.h appears broken)
...
2004-09-02 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/16848
* include/Makefile.am (ext_headers): Remove demangle.h.
* include/Makefile.in: Regenerate.
* include/ext/demangle.h: Remove.
From-SVN: r86968
2004-09-02 16:56:29 +00:00
Benjamin Kosnik
8bfd0a46ea
re PR libstdc++/16614 (Excessive resource usage in __mt_alloc)
...
2004-09-01 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/16614
* include/ext/mt_allocator.h (__mt_base): Not type dependent,
split into..
(__pool): New, specialize.
(__common_pool): New, static bits here.
(__per_type_pool): New, and here.
(__mt_alloc_base): New.
(__mt_alloc): Add template parameter, inherit from it.
* src/allocator.cc: Split this...
* src/allocator-inst.cc: And this...
* src/pool_allocator.cc: ...into this.
* src/mt_allocator.cc: ... and this. Add definitions for
__mt_base.
* src/Makefile.am (sources): Split allocator.cc to
pool_allocator.cc and mt_allocator.cc.
* src/Makefile.in: Regenerate.
* config/linker-map.gnu: Add symbols.
* docs/html/ext/mt_allocator.html: Document new design.
* testsuite/ext/mt_allocator/tune-1.cc: New.
* testsuite/ext/mt_allocator/tune-2.cc: New.
* testsuite/ext/mt_allocator/tune-3.cc: New.
* testsuite/ext/mt_allocator/tune-4.cc: New.
* testsuite/testsuite_allocator.h (__gnu_test::check_new): New.
* testsuite/ext/allocators.cc: Use check_new, split into...
* testsuite/ext/mt_allocator/check_new.cc: this.
* testsuite/ext/pool_allocator/check_new.cc: this.
* testsuite/ext/malloc_allocator/check_new.cc: this.
* testsuite/ext/debug_allocator/check_new.cc: this.
* testsuite/ext/mt_allocator/instantiate.cc: this.
* testsuite/ext/pool_allocator/instantiate.cc: this.
* testsuite/ext/malloc_allocator/instantiate.cc: this.
* testsuite/ext/debug_allocator/instantiate.cc: this.
From-SVN: r86936
2004-09-01 22:17:00 +00:00
Benjamin Kosnik
fa01624514
pool_allocator.h: Rename __pool_base to __pool_alloc_base.
...
2004-08-30 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pool_allocator.h: Rename __pool_base to
__pool_alloc_base.
* src/allocator.cc: Same.
* config/linker-map.gnu: Same.
From-SVN: r86789
2004-08-30 18:22:01 +00:00
Matt Austern
f1197ae160
re PR libstdc++/16844 (Explicit instantiation failing)
...
PR libstdc++/16844
* include/bits/stl_list.h (_M_create_node): Remove unused
zero-argument version.
* include/ext/slist (_M_create_node): Pass two arguments to
allocator's construct() member function.
* testsuite/23_containers/deque/explicit_instantiation.cc: New.
* testsuite/23_containers/list/explicit_instantiation.cc: New.
* testsuite/23_containers/vector/explicit_instantiation.cc: New.
* testsuite/23_containers/map/explicit_instantiation.cc: New.
* testsuite/23_containers/set/explicit_instantiation.cc: New.
* testsuite/23_containers/multimap/explicit_instantiation.cc: New.
* testsuite/23_containers/multiset/explicit_instantiation.cc: New.
* testsuite/ext/hash_set_explicit_instantiation.cc: New.
* testsuite/ext/slist_explicit_instantiation.cc: New.
From-SVN: r85428
2004-08-02 04:40:19 +00:00
Matt Austern
1985f1cdaa
stl_construct.h (_Destroy): New three-argument overload that takes an allocator argument.
...
* include/bits/stl_construct.h (_Destroy): New three-argument
overload that takes an allocator argument. Another inline
three-argument overload that takes std::allocator and dispatches
to the two-argument version.
* include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux):
Change return type to void to match uninitialized_fill_n.
(__uninitialized_copy_a_): New function. Like uninitialized_copy
except that it takes an allocator and uses it for construct and
destroy. If the allocator is std::allocator, dispatches to
uninitialized_copy.
(__uninitialized_fill_a): Likewise.
(__uninitialized_fill_n_a): Likewise.
(__uninitialized_copy_copy): Give it an allocator argument.
(__uninitialized_fill_copy): Likewise.
(__uninitialized_copy_fill): Likewise.
* include/bits/deque.tcc: Use new forms defined in stl_construct.h
and stl_uninitialized.h. Replace use of single-argument _Construct
and _Destroy with use of allocator's construct and destroy methods.
* include/bits/list.tcc: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/vector.tcc: Likewise.
* include/ext/hashtable.h: Use rebind so that allocator_type
has correct type for a container's allocator. Replace use of
single-argument _Construct and _Destroy with use of allocator's
construct and destroy methods.
* include/ext/memory (__uninitialized_copy_n_a): New function.
Like uninitialized_copy_n except that it takes an extra parameter,
an allocator, and uses it for construct and destroy operations.
* include/ext/rope: Use new forms defined in stl_construct.h,
stl_uninitialized.h, and ext/memory. Replace use of single-argument
_Construct and _Destroy with allocator construct and destroy methods.
* include/ext/ropeimpl.h: Likewise.
* include/ext/slist.h: Likewise.
* testsuite/testsuite_allocator.h (check_construct_destroy): New.
* testsuite/testsuite_allocator.cc (check_construct_destroy): New.
* testsuite/23_containers/deque/check_construct_destroy.cc: New.
* testsuite/23_containers/list/check_construct_destroy.cc: New.
* testsuite/23_containers/set/check_construct_destroy.cc: New.
* testsuite/23_containers/vector/check_construct_destroy.cc: New.
* testsuite/ext/hash_check_construct_destroy.cc: New.
* testsuite/ext/slist_check_construct_destroy.cc: New.
From-SVN: r85265
2004-07-28 16:37:20 +00:00
Benjamin Kosnik
780028b6cf
mt_allocator.html: Add docs for _Tune.
...
2004-07-13 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/ext/mt_allocator.html: Add docs for _Tune.
* include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public.
(__mt_alloc::_S_set_options): Same.
Add to comments.
2004-07-13 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults
for linux.
* configure: Regenerated.
From-SVN: r84674
2004-07-14 06:37:17 +00:00
Benjamin Kosnik
f65d320115
Per Bothner <per@bothner.com > Mohan Embar <gnustuff@thisiscool.com>
...
2004-07-01 Benjamin Kosnik <bkoz@redhat.com>
Per Bothner <per@bothner.com >
Mohan Embar <gnustuff@thisiscool.com>
PR libstdc++/16248
* include/bits/concurrence.h (__glibcxx_mutex_type): New.
(__glibcxx_mutex): Encapsulate mutex init function into type for
threaded configurations without __GTHREAD_MUTEX_INIT.
(lock::lock): Make device member a reference.
(lock::~lock): Same.
* include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
to mutex_type.
* src/allocator.cc: Same.
Co-Authored-By: Mohan Embar <gnustuff@thisiscool.com>
Co-Authored-By: Per Bothner <per@bothner.com>
From-SVN: r83985
2004-07-01 14:49:29 +00:00
Brad Spencer
1190bcd85d
mt_allocator.h: Handle allocations at static initialization that happen before _S_options is...
...
2004-06-30 Brad Spencer <spencer@infointeractive.com>
* include/ext/mt_allocator.h: Handle allocations at static
initialization that happen before _S_options is (automatically)
constructed; set _S_init even if _M_force_new is true.
From-SVN: r83949
2004-07-01 02:21:51 +00:00
Paolo Carlini
a6048f2903
rope: Trivial formatting fixes.
...
2004-06-27 Paolo Carlini <pcarlini@suse.de>
* include/ext/rope: Trivial formatting fixes.
* include/ext/ropeimpl.h: Likewise.
From-SVN: r83737
2004-06-27 17:51:08 +00:00
Benjamin Kosnik
838d430929
concurrence.h (__gnu_cxx::lock): New.
...
2004-06-24 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/concurrence.h (__gnu_cxx::lock): New.
* include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove.
(__pool_base::_M_get_mutex): New.
* include/bits/allocator.h: Tweak.
* src/allocator.cc (__pool_base::_M_get_free_list): Correct offset.
* config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock.
* include/bits/stl_threads.h: Remove.
* include/Makefile.am: Also here.
* include/Makefile.in: Regenerate.
* src/locale_init.cc: Use __gnu_cxx::lock.
* src/allocator.cc: Move all instantiations...
* src/allocator-inst.cc: ...here.
From-SVN: r83638
2004-06-25 06:10:44 +00:00
Paolo Carlini
e2aa7005e7
mt_allocator (__mt_alloc<>::_Tune): Add _M_align, the alignment requested.
...
2004-06-18 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align,
the alignment requested.
(__mt_alloc<>::_Tune::_Tune): Tweak consistently.
(__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record).
(__mt_alloc<>::deallocate): Likewise.
From-SVN: r83372
2004-06-18 23:27:30 +00:00
Benjamin Kosnik
2832d07bd1
pool_allocator.h: Qualify __throw_bad_alloc.
...
2004-06-18 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pool_allocator.h: Qualify __throw_bad_alloc.
(__pool_base): Remove unused template parameter. Add
protected. Move lock data into __pool_base::_Lock. Remove static
on member functions.
(__pool_base::_M_get_free_list): New.
(__pool_alloc): Move _S_force new here.
* src/allocator.cc: Move out of line __pool_base definitions here.
* config/linker-map.gnu: Export bits from __pool_base.
From-SVN: r83355
2004-06-18 16:52:42 +00:00
Paolo Carlini
e751adc3b1
rope (rope(_CharT, const allocator_type&)): Fix to use _Data_allocate.
...
2004-06-16 Paolo Carlini <pcarlini@suse.de>
* include/ext/rope (rope(_CharT, const allocator_type&)): Fix
to use _Data_allocate.
* include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise.
(rope<>::_S_substring): Likewise.
(rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise.
(rope<>::c_str()): Likewise.
(rope<>::replace_with_c_str()): Likewise.
* include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf):
Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::,
not _RopeRep.
(_Rope_iterator_base<>::_S_setcache): Likewise.
(_Rope_iterator_base<>::_S_setcache_for_incr): Likewise.
(rope<>::_S_substring): Likewise.
(rope<>::_S_dump): Likewise.
(rope<>::_S_fetch_ptr): Likewise.
(rope<>::_S_compare): Likewise.
(rope<>::replace_with_c_str()): Likewise.
* testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc.
* testsuite/ext/rope/2.cc: New.
2004-06-16 Paolo Carlini <pcarlini@suse.de>
Matt Austern <austern@apple.com>
* testsuite/ext/rope/3.cc: New.
Co-Authored-By: Matt Austern <austern@apple.com>
From-SVN: r83251
2004-06-16 17:29:16 +00:00
Paolo Carlini
659e82ad0f
hashtable.h: Trivial formatting fixes.
...
2004-06-15 Paolo Carlini <pcarlini@suse.de>
* include/ext/hashtable.h: Trivial formatting fixes.
* include/ext/rb_tree: Likewise.
From-SVN: r83183
2004-06-15 13:43:56 +00:00
Paolo Carlini
d962e073a0
hash_map: Trivial formatting fixes.
...
2004-06-14 Paolo Carlini <pcarlini@suse.de>
* include/ext/hash_map: Trivial formatting fixes.
* include/ext/hash_set: Likewise.
* include/ext/memory: Likewise.
* include/ext/numeric: Likewise.
From-SVN: r83131
2004-06-14 19:40:45 +00:00
Paolo Carlini
14ba6d00aa
slist: Trivial formatting fixes.
...
2004-06-14 Paolo Carlini <pcarlini@suse.de>
* include/ext/slist: Trivial formatting fixes.
From-SVN: r83098
2004-06-14 13:03:45 +00:00
Paolo Carlini
4a787fa8bf
[multiple changes]
...
2004-06-12 Paolo Carlini <pcarlini@suse.de>
* include/ext/algorithm: Trivial formatting fixes.
* include/ext/functional: Likewise.
* include/ext/hash_fun.h: Likewise.
* include/ext/iterator: Likewise.
2004-06-12 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.tcc (find(const _CharT*, size_type,
size_type)): Reimplement using std::search.
* src/string-inst.cc: Instantiate std::search for char/wchar_t.
2004-06-12 Dhruv Matani <dhruvbird@gmx.net>
* testsuite/performance/21_strings/string_find.cc: New.
From-SVN: r83022
2004-06-12 08:10:24 +00:00
Paolo Carlini
5f1a5ede6c
pool_allocator.h: Convert to a global free-list, as per the original SGI/HP design...
...
2004-06-08 Paolo Carlini <pcarlini@suse.de>
* include/ext/pool_allocator.h: Convert to a global free-list,
as per the original SGI/HP design: move the implementation
details to struct __pool_base, from which __pool_alloc derives.
* src/allocator.cc: Instantiate __pool_base.
From-SVN: r82794
2004-06-08 22:19:18 +00:00
Richard B. Kreckel
803cb0b5c9
re PR libstdc++/14600 (__gnu_cxx::stdio_sync_filebuf should expose internal FILE*)
...
2004-05-29 Richard B. Kreckel <Richard.Kreckel@Framatome-ANP.com>
Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/14600
* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
* include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
* config/io/basic_file_stdio.cc (__basic_file::file): New.
* config/io/basic_file_stdio.h: Define.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r82419
2004-05-29 14:40:59 +00:00
Benjamin Kosnik
26c691a88b
re PR libstdc++/12854 (libstdc++ vs. -Weffc++)
...
2004-05-22 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12854
Fixups for -Weffc++.
* include/bits/basic_string.h (basic_string::operator=): Return
pointer to this instead of result of assign. Although redundant,
this doesn't impact resultant codegen.
* include/bits/locale_facets.h (__numpunct_cache): Declare
assignment opxserator and copy constructor private.
(__timepunct_cache): Same.
(__moneypunct_cache): Same.
(collate): Use member initialization list for _M_c_locale_collate.
* config/locale/gnu/messages_members.h: Same.
* config/locale/gnu/time_members.h (__timepunct): Same.
* src/codecvt.cc: Use member initialization list to initialize
_M_c_locale_codecvt.
* src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok.
* config/os/gnu-linux/ctype_noninline.h: Same.
* src/locale.cc (_Impl): Same.
* src/locale_init.cc: Same.
* src/localename.cc: Same.
* include/bits/basic_ios.h (basic_ios): Complete member
initialization list.
* include/bits/istream.tcc (basic_istream::sentry): Same.
* include/bits/ostream.tcc (basic_ostream::sentry): Same.
* include/bits/fstream.tcc (basic_filebuf): Add _M_lock and
_M_pback to member initialization list.
* include/std/std_streambuf.h: Same.
* include/std/std_sstream.h: Same, for _M_mode.
* src/ios.cc (ios_base): Same.
* include/ext/rope: Make derived classes match exception
specifications. Add copy constructors and assignment operators.
* include/debug/safe_base.h (_Safe_sequence_base): Declare copy
constructor and assignment operator protected.
(_Safe_iterator_base): Same.
* include/debug/formatter.h (_Error_formatter): Define copy
constructor and assignment operator.
* include/backward/strstream: Declare assignment operator and copy
constructor private.
From-SVN: r82153
2004-05-22 23:46:34 +00:00
Jonathan Wakely
c6618c0336
re PR libstdc++/11691 (stdio_filebuf leaks FILE buffer when "no close" is requested)
...
2004-05-18 Jonathan Wakely <redi@gcc.gnu.org>
* include/ext/stdio_filebuf.h: Update comments to reflect PR 11691.
From-SVN: r82019
2004-05-19 09:31:07 +01:00
Paolo Carlini
2ab20654a2
[multiple changes]
...
2004-05-18 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor
tweaks.
2004-05-18 Dhruv Matani <dhruvbird@gmx.net>
* include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write
allocation loop which removes blocks from the global free list
from O(N) to O(1) when the required blocks are <= the number
available.
From-SVN: r81992
2004-05-18 15:58:33 +00:00
Jonathan Wakely
319da9da6b
enc_filebuf.h: Move concept-check macro to class scope.
...
2004-05-18 Jonathan Wakely <redi@gcc.gnu.org>
* include/ext/enc_filebuf.h: Move concept-check macro to class scope.
From-SVN: r81978
2004-05-18 10:09:39 +01:00
Paolo Carlini
08f7c2eb78
mt_allocator.h (__mt_alloc<>::deallocate): Consistently update __bin._M_free[0].
...
2004-05-16 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
Consistently update __bin._M_free[0].
(__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use
__bin._M_free[0] to simplify the while loop (i.e., the number
of iterations becomes known at the outset).
From-SVN: r81916
2004-05-16 17:01:40 +00:00
Benjamin Kosnik
563ae04fec
Fixups for EDG front end.
...
2004-04-06 Benjamin Kosnik <bkoz@redhat.com>
Fixups for EDG front end.
* include/ext/rope: Instead of non-existent function
_Data_allocate, use allocator's allocate. Use this.
(namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
enumerations from _Rope_RopeRep here.
* include/ext/ropeimpl.h: Same.
* src/ext-inst.cc (_S_min_len): Fix up definition.
* config/locale/gnu/ctype_members.cc: Qualify base class members
with this.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/gnu/messages_members.h: Same.
* config/locale/generic/messages_members.h: Same.
* src/ctype.cc: Same.
* include/bits/codecvt.h: Same.
* include/bits/boost_concept_check.h: Declare.
(__error_type_must_be_an_unsigned_integer_type): Remove this.
(__error_type_must_be_an_integer_type): Remove this.
(__error_type_must_be_a_signed_integer_type): Remove this.
* config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
* libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
specification to definition.
(__cxa_allocate_exception): Same.
* libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
(__cxa_get_globals): Same.
* libsupc++/del_op.cc: Add comment about freestanding.
From-SVN: r80475
2004-04-07 03:33:36 +00:00
Paolo Carlini
268d3b1832
mt_allocator.h (__mt_alloc<>::deallocate): The critical section is actually very small, only two assignments.
...
2004-04-05 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
The critical section is actually very small, only two assignments.
From-SVN: r80439
2004-04-05 22:46:04 +00:00
Paolo Carlini
c8333c0fd5
mt_allocator.h (__mt_alloc<>::allocate): Factor out some duplicated code.
...
2004-04-03 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out
some duplicated code.
(__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used
in the single threaded case.
* testsuite/performance/20_util/allocator/list_sort_search.cc:
Reorder and renumber the tests consistently with the other testfiles.
* testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
* testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
* testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
From-SVN: r80375
2004-04-03 13:39:16 +00:00
Paolo Carlini
ab40b100d3
mt_allocator.h (__mt_alloc<>::deallocate): Rearrange arithmetic to avoid computing two divisions at each deallocation.
...
2004-04-02 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
Rearrange arithmetic to avoid computing two divisions at
each deallocation.
From-SVN: r80356
2004-04-02 19:51:21 +00:00
Paolo Carlini
354d4c68c6
mt_allocator.h (__mt_alloc<>::_S_initialize): Streamline the second half...
...
2004-04-01 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
Streamline the second half, wrapping it in a single
'#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
conditionals inside loops.
From-SVN: r80323
2004-04-01 21:47:59 +00:00
Paolo Carlini
6f52a889fd
[multiple changes]
...
2004-03-27 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h: Uglify consistently names of
variables, members and classes; tidy.
2004-03-27 Dhruv Matani <dhruvbird@gmx.net>
* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
Deallocation loop rewrote.
From-SVN: r80012
2004-03-27 10:15:49 +00:00
Paolo Carlini
dd95381f8a
mt_allocator.h (__mt_alloc<>::allocate, [...]): Protect two instances of block->thread_id with __GTHREADS.
...
2004-03-26 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
__mt_alloc<>::deallocate): Protect two instances of
block->thread_id with __GTHREADS.
From-SVN: r79986
2004-03-26 16:56:09 +00:00
Paolo Carlini
90ceccd46e
mt_allocator.h (__mt_alloc<>::tune): Add _M_min_bin, the size in bytes of the smallest bin.
...
2004-03-25 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::tune):
Add _M_min_bin, the size in bytes of the smallest bin.
(__mt_alloc<>::tune()): Tweak accordingly.
(__mt_alloc<>::tune(size_t, ...)): Likewise.
(__mt_alloc<>::block_record): Change to a union: members next
and thread_id are never used at the same time.
(__mt_alloc<>::allocate): Update consistently.
(__mt_alloc<>::deallocate): Likewise.
(__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
_S_bin_size for the configurable _M_min_size.
From-SVN: r79962
2004-03-25 18:23:40 +00:00
Dhruv Matani
58c959212f
malloc_allocator.h: Fixed the construct function to call global placement new instead of assignment.
...
2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
* ext/malloc_allocator.h: Fixed the construct function to call
global placement new instead of assignment. Added a check after
the return from malloc to check whether returned pointer is NULL,
and if so, throw std::bad_alloc().
* ext/debug_allocator.h: Added a check in the deallocate function
to check whether the user has passed a NULL pointer or not.
From-SVN: r79934
2004-03-24 21:40:01 +00:00
Dhruv Matani
71f9a9d15e
bitmap_allocator.h: (_Bit_scan_forward) -> Made this function call __builtin_ctz instead of the...
...
2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
* include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
function call __builtin_ctz instead of the while loop.
(allocate) -> If condition has __builtin_expect.
(deallocate) -> Ditto.
Renamed a few left-over variables and typedefs according to the
C++STYLE mentioned in the documentation.
Protected calls to __gthread* by __gthread_active_p(), whose value
is cached in the local variable __threads_active.
From-SVN: r79924
2004-03-24 18:27:43 +00:00
Paolo Carlini
affb18b2fa
mt_allocator.h (__mt_alloc<>::allocate, [...]): Avoid redundant conditionals.
...
2004-03-24 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
__mt_alloc<>::deallocate): Avoid redundant conditionals.
From-SVN: r79917
2004-03-24 15:25:37 +00:00
Paolo Carlini
29d4adf460
acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
...
2004-03-22 Paolo Carlini <pcarlini@suse.de>
* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
* configure: Regenerate.
* config/allocator/pool_allocator_base.h: New.
* include/ext/pool_allocator.h: Convert to a standard-conforming
allocator.
* src/allocator.cc: Tweak instantiations.
* testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
* testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
* testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
* testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
* testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
* testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
From-SVN: r79824
2004-03-22 13:07:13 +00:00
Paolo Carlini
8268bba6f8
re PR libstdc++/12077 ([3.4 only] wcin.rdbuf()->in_avail() return value too high)
...
2004-03-19 Paolo Carlini <pcarlini@suse.de>
Petur Runolfsson <peturr02@ru.is>
PR libstdc++/12077
* include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's
no way to find out the conversion used by the underlying FILE*.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New.
* testsuite/27_io/objects/char/9.cc: Tweak.
Co-Authored-By: Petur Runolfsson <peturr02@ru.is>
From-SVN: r79695
2004-03-19 19:31:38 +00:00
Paolo Carlini
59d3567214
re PR libstdc++/14648 (rope is broken (regression))
...
2004-03-19 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/14648
* include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
memory allocation/deallocation calls.
* testsuite/ext/14648.cc: New.
From-SVN: r79687
2004-03-19 16:08:15 +00:00
Benjamin Kosnik
ce7df2fd97
14176.cc: New.
...
2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/20_util/allocator/14176.cc: New.
* include/ext/mt_allocator.h: Formatting fixes.
From-SVN: r79407
2004-03-12 21:11:51 +00:00
Dhruv Matani
009368dba6
ballocator_doc.txt: New file.
...
2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
* docs/html/ext/ballocator_doc.txt: New file.
* include/Makefile.am (ext_headers): Add
${ext_srcdir}/bitmap_allocator.h .
* include/Makefile.in: Regenerate (by hand, since I didn't have
automake de jure on hand).
* include/ext/bitmap_allocator.h: New file.
* testsuite/performance/20_util/allocator/list_sort_search.cc: New test.
* testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
* testsuite/performance/20_util/allocator/producer_consumer.cc: Add
test for the bitmap_allocator<>.
* testsuite/performance/20_util/allocator/insert.cc: Likewise.
* testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
* testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
From-SVN: r79366
2004-03-12 03:28:12 +00:00
Benjamin Kosnik
c0bec71b82
mt_allocator.h (_S_initialize): If !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
...
2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/mt_allocator.h (_S_initialize): If
!__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
From-SVN: r79044
2004-03-07 02:17:19 +00:00
Benjamin Kosnik
f83295bafc
re PR libstdc++/12658 (Thread safety problems in locale::global() and locale::locale())
...
2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12658
* src/locale_init.cc (locale::locale): Lock critical regions with
external mutexes.
(locale::global): Same.
* include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
Add in once bits for cases without __GTHREAD_MUTEX_INIT.
(__glibcxx_mutex_lock): Same.
* config/cpu/generic/atomicity.h: Remove
_GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
* src/misc-inst.cc: Move all locking bits out of this file.
* config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
* src/misc-inst.cc: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/linker-map.gnu: Remove types in the signature of atomic
exports, as they may vary.
From-SVN: r79043
2004-03-07 01:32:43 +00:00
Benjamin Kosnik
40fcf31b2f
[multiple changes]
...
2004-02-26 Ian Lance Taylor <ian@wasabisystems.com>
* testsuite/demangle/abi_examples/01.cc: Expect error -2.
* testsuite/demangle/abi_examples/02.cc: Likewise.
* testsuite/demangle/regression/cw-11.cc: Likewise.
* testsuite/demangle/regression/cw-16.cc: Change two expected
results to match libiberty demangler output.
2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/10246
* libsupc++/Makefile.am: Use libiberty demangler.
(c_sources): Add cp-demangle.c.
* libsupc++/Makefile.in: Regenerate.
* src/Makefile.am (sources): Remove demangle.cc.
* src/Makefile.in: Regenerate.
* include/Makefile.am (bits_headers): Move demangle.h.
(ext_headers): ...here.
* include/Makefile.in: Regenerate.
* include/bits/demangle.h: Move...
* include/ext/demangle.h: ...here.
* src/demangle.cc: Remove.
2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/demangle.h: Add type template parameter to all
templates with just an Allocator template parameter.
From-SVN: r78553
2004-02-27 03:21:16 +00:00
Benjamin Kosnik
f263b26e17
malloc_allocator.h: Add operators ==, !=.
...
2004-02-20 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/malloc_allocator.h: Add operators ==, !=.
* include/ext/new_allocator.h: Add operators ==, !=.
* include/ext/mt_allocator.h (__mt_alloc::tune): New.
(__mt_alloc::_S_get_options): New.
(__mt_alloc::_S_set_options): New.
(__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key.
(__mt_alloc::_S_no_of_bins): To _S_bin_size.
Move functions out of line, simplify, format.
* src/allocator.cc: Simplify explicit instantiations.
* include/bits/allocator.h: Tweak.
From-SVN: r78314
2004-02-23 15:41:43 +00:00
Stefan Olsson
4d0bdcd6e1
mt_allocator.h: Removed the last pointer.
...
2004-02-17 Stefan Olsson <stefan@xapa.se>
* include/ext/mt_allocator.h: Removed the last
pointer. Deallocated blocks are now added to the front of
freelists as proposed by Felix Yen. This gives roughly 10%
performance boost and saves some memory.
* docs/html/ext/mt_allocator.html: Change due to that deallocated
blocks now are added to the front of freelists. The reason to this
approach is also explained.
From-SVN: r78009
2004-02-18 01:21:10 +00:00
Loren J. Rittle
a39c16dd5b
* include/ext/pool_allocator.h: Include c++config.h.
...
From-SVN: r77577
2004-02-10 00:43:04 +00:00
Stefan Olsson
1ef0031284
mt_allocator.h: thread_id is unused in non threaded applications and now has a ifdef to remove...
...
2004-02-09 Stefan Olsson <stefan@xapa.se>
* include/ext/mt_allocator.h: thread_id is unused in non threaded
applications and now has a ifdef to remove it completely on
compilers without thread support. Include stdlib.h due to a
compiler warning on getenv().
From-SVN: r77576
2004-02-10 00:31:53 +00:00
Dhruv Matani
56766e0db5
debug_allocator.h: _M_extra now stands for the number of extra objects instead of the number of...
...
2004-02-04 Dhruv Matani <dhruvbird@gmx.net>
* include/ext/debug_allocator.h: _M_extra now stands for the
number of extra objects instead of the number of extra bytes.
(debug_allocator::allocate): Adjust.
(debug_allocator::deallocate): Adjust.
* include/ext/pool_allocator.h: Fix typo.
From-SVN: r77256
2004-02-04 17:37:10 +00:00
Paolo Carlini
dcec0389d1
PR libstdc++/13976 (continued)
...
2004-02-02 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/13976 (continued)
* include/ext/malloc_allocator.h (malloc_allocator::deallocate):
Make the second parameter unnamed, to void unused parameter
warnings.
* include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
From-SVN: r77113
2004-02-02 13:04:36 +00:00
Paolo Carlini
90f8b69248
re PR libstdc++/13976 (ext/new_allocator.h:81: warning: unused parameter '__h')
...
2004-02-02 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/13976
* include/ext/malloc_allocator.h (malloc_allocator::allocate):
Make the second parameter unnamed, to void unused parameter
warnings.
* include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
* include/ext/new_allocator.h (new_allocator::allocate): Ditto.
From-SVN: r77111
2004-02-02 12:39:55 +00:00
Per Bothner
af3fb3d6dc
2004-01-31 Per Bothner <per@bothner.com>
...
* include/ext/mt_allocator.h
(__mt_alloc::_S_thread_freelist_mutex): Guard with
__GTHREAD_MUTEX_INIT.
From-SVN: r77042
2004-01-31 17:38:45 +00:00
Benjamin Kosnik
ba9d552e03
Makefile.am (bits_headers): Remove allocator_traits.h.
...
2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (bits_headers): Remove allocator_traits.h.
* include/Makefile.in: Regenerate.
* include/bits/allocator_traits.h: Remove.
* include/bits/allocator.h: Remove allocator_traits.h include, and
relevant comments.
(allocator): Empty base class, inherit from the underlying allocator.
* src/allocator-inst.cc: Move __pool_alloc instantiation to...
* src/allocator.cc: ...here. New. For the underlying allocators.
Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
* config/linker-map.gnu: Remove __pool_alloc bits.
* src/Makefile.am (sources): Add allocator.cc.
* src/Makefile.in: Regenerate.
* testsuite/20_util/allocator/1.cc: Split second test into...
* testsuite/20_util/allocator/8230.cc: ...this.
* include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
typedef to use std::allocatore. Format.
* include/ext/pool_allocator.h: Remove allocator_traits.h include,
_Alloc_traits.
* include/ext/mt_allocator.h (__gnu_cxx): Qualify
__throw_bad_alloc calls. Don't include <memory>.
* include/ext/malloc_allocator.h: Remove <memory> include.
* include/ext/new_allocator.h (new_allocator): Same.
* include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
declaration. Switch __alloc to _Alloc.
* include/ext/hashtable.h: Remove __alloc.
* include/backward/alloc.h: Only inject allocator, not
implementation details.
* include/ext/mt_allocator.h: Replace free with delete.
From-SVN: r76821
2004-01-29 00:18:40 +00:00
Stefan Olsson
f15f99a14e
mt_allocator.h: Replaced all malloc() calls with operator new().
...
2004-01-28 Stefan Olsson <stefan@snon.net>
* include/ext/mt_allocator.h: Replaced all malloc() calls with
operator new(). Added support for the env variable
GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
one in allocate() as well). Fix typos.
From-SVN: r76795
2004-01-28 17:50:34 +00:00
Paolo Carlini
ba9119ec89
c_locale.cc: Fix throw messages to use the __N marker.
...
2004-01-26 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.cc: Fix throw messages
to use the __N marker.
* config/locale/gnu/c_locale.cc: Likewise.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h:
Likewise.
* docs/html/17_intro/C++STYLE: Likewise.
* include/bits/basic_ios.tcc: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/bits/vector.tcc: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/std/std_bitset.h: Likewise.
* src/ios.cc: Likewise.
* src/locale.cc: Likewise.
* src/localename.cc: Likewise.
From-SVN: r76684
2004-01-27 00:49:03 +00:00
Stefan Olsson
3cfb44c200
mt_allocator.h: Reduce lock contention.
...
2004-01-23 Stefan Olsson <stefan@snon.net>
* include/ext/mt_allocator.h: Reduce lock contention.
From-SVN: r76474
2004-01-24 00:21:02 +00:00
Stefan Olsson
cec73eb50c
mt_allocator.h: If a thread...
...
2004-01-19 Stefan Olsson <stefan@snon.net>
* include/ext/mt_allocator.h: If a thread, when it dies, still has
memory on it's freelist this memory is not returned to global
list. Simplification of deallocate so that memory is always
returned to the calling thread id's freelist instead of to
global. Fix typos. Add volatile where appropriate.
From-SVN: r76200
2004-01-20 06:35:21 +00:00
Stefan Olsson
2913770f6f
mt_allocator.h: Reuse thread id's as soon as possible by changing the behaviour of...
...
2004-01-15 Stefan Olsson <stefan@snon.net>
* include/ext/mt_allocator.h: Reuse thread id's as soon as
possible by changing the behaviour of thread_freelist to do
push_front when threads die instead of push_back.
From-SVN: r75939
2004-01-15 19:18:35 +00:00
Stefan Olsson
41f2472503
mt_allocator.h: Fixups.
...
2004-01-14 Stefan Olsson <stefan@snon.net>
* include/ext/mt_allocator.h: Fixups.
* testsuite/performance/allocator.cc: Enable __mt_alloc tests.
* testsuite/performance/allocator_thread.cc: Same.
From-SVN: r75875
2004-01-14 18:54:18 +00:00
Paolo Carlini
5640461d2f
rope (_Rope_rep_alloc_base): Eliminate.
...
2004-01-13 Paolo Carlini <pcarlini@suse.de>
* include/ext/rope (_Rope_rep_alloc_base): Eliminate.
(_Rope_rep_base): Inherit directly from the rope allocator;
use rebinding instead of _Alloc_traits; pick up data member
from _Rope_rep_alloc_base.
(_Rope_alloc_base): Eliminate.
(_Rope_base): Inherit directly from the rope allocator; use
rebinding instead of _Alloc_traits; pick up data member from
_Rope_alloc_base.
(rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
From-SVN: r75800
2004-01-13 11:46:50 +00:00
Paolo Carlini
b8da67fa2f
pool_allocator.h (class __pool_alloc): Use operator new and operator delete.
...
2003-12-28 Paolo Carlini <pcarlini@suse.de>
* include/ext/pool_allocator.h (class __pool_alloc): Use
operator new and operator delete.
From-SVN: r75181
2003-12-28 12:13:15 +00:00
Benjamin Kosnik
d38d4e5d18
new_allocator.h (new_allocator): Proper allocator class.
...
2003-12-23 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/new_allocator.h (new_allocator): Proper allocator class.
(__new_alloc): Delete.
* include/ext/malloc_allocator.h (malloc_allocator): Same.
(__malloc_alloc): Delete.
* include/ext/mt_allocator.h: Same, but weakly.
* include/ext/debug_allocator.h: Convert to the new style.
* include/ext/pool_allocator.h: Use global new and delete directly.
* include/backward/alloc.h: Don't inject malloc_allocator, or
debug_allocator.
* testsuite/ext/allocators.cc: Minimal fixups for usage of new
classes. Comment out tests with __pool_alloc for now.
* testsuite/performance/allocator.cc: Same.
From-SVN: r74965
2003-12-23 07:24:57 +00:00
Matt Austern
34c878297e
stl_bvector.h (_Bvector_alloc_base): Eliminate.
...
* include/bits/stl_bvector.h (_Bvector_alloc_base): Eliminate.
(_Bvector_base): Inherit directly from word allocator.
* include/bits/stl_tree.h (_Rb_tree_alloc_base): Eliminate.
(_Rb_tree_base): Eliminate.
(_Rb_tree): Inherit directly from node allocator.
* include/ext/slist (_Alist_alloc_base): Eliminate.
(_Slist_base): Inherit direcly from node allocator.
From-SVN: r74955
2003-12-23 00:09:26 +00:00
Benjamin Kosnik
941fe801b4
numeric_limits.cc: Add _GLIBCXX_ASSERT to dg-options in testcases that use VERIFY.
...
2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/18_support/numeric_limits.cc: Add _GLIBCXX_ASSERT to
dg-options in testcases that use VERIFY.
* testsuite/23_containers/vector/invalidation/1.cc: Same.
* 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/vector/resize/1.cc: Same.
* testsuite/26_numerics/complex_value.cc: Same.
* testsuite/27_io/ios_base/storage/1.cc: Same.
* testsuite/27_io/ios_base/storage/2.cc: Same.
* testsuite/27_io/ios_base/storage/3.cc: Same.
* testsuite/27_io/manipulators/standard/char/2.cc: Same.
* testsuite/backward/11460.cc: Same.
* testsuite/backward/strstream_members.cc: Same.
* include/ext/hash_set (class hash_multiset): Fix typo.
From-SVN: r74951
2003-12-22 21:05:22 +00:00
Andrew Pinski
67e053df03
re PR libstdc++/13462 (Non-standard conformed type set::pointer)
...
2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
PR libstdc++/13462
* include/bits/stl_multiset.h (__gnu_norm::multiset): Define pointer
as allocator's pointer, likewise for reference, const_pointer, and
const_reference.
* include/bits/stl_set.h (__gnu_norm::set): Likewise.
* include/ext/hash_set (__gnu_ext::hash_set): Likewise.
(__gnu_ext::hash_multiset): Likewise.
From-SVN: r74944
2003-12-22 11:32:34 -08:00
Matt Austern
8a1d8dd9c8
demangle.h: Fix allocator type correctness, i.e.
...
* include/bits/demangle.h: Fix allocator type correctness,
i.e. make sure that when we instantiate a container with a value
type and an allocator, the allocator's value type matches the
container's.
* include/bits/stl_deque.h (_Deque_alloc_base): Eliminate.
(_Deque_base): inherit directly from the deque's allocator. Use
rebinding instead of _Alloc_traits. Pick up data members from
_Deque_alloc_base.
* include/bits/stl_list.h (_List_alloc_base): Eliminate.
(_List_base): Inherit directly from the list's allocator. Use
rebinding instead of _Alloc_traits. Pick up data members from
_List_alloc_base.
* include/bits/stl_vector.h (_Vector_alloc_base): Eliminate
(_Vector_base): Inherit directly from the vector's allocator. Use
rebinding instead of _Alloc_traits. Pick up data members from
_Vector_alloc_base.
* include/ext/hashtable.h: Fix allocator type correctness (the
vector of buckets must be passed an allocator for objects of
type _Node*). Use rebinding instead of _Alloc_traits.
From-SVN: r74787
2003-12-18 18:35:38 +00:00
Bernardo Innocenti
fa30fe72d1
algorithm, [...]: Remove trailing whitespace.
...
* include/ext/algorithm, include/ext/debug_allocator.h,
include/ext/enc_filebuf.h, include/ext/functional,
include/ext/hash_fun.h, include/ext/hash_map, include/ext/hash_set,
include/ext/hashtable.h, include/ext/iterator,
include/ext/malloc_allocator.h, include/ext/memory,
include/ext/mt_allocator.h, include/ext/numeric,
include/ext/pod_char_traits.h, include/ext/pool_allocator.h,
include/ext/rb_tree, include/ext/rope, include/ext/ropeimpl.h,
include/ext/slist, include/ext/stdio_filebuf.h,
include/ext/stdio_sync_filebuf.h: Remove trailing whitespace.
From-SVN: r74464
2003-12-09 05:31:53 +01:00
Benjamin Kosnik
e80213d249
re PR libstdc++/11691 (stdio_filebuf leaks FILE buffer when "no close" is requested)
...
2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/11691
* include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
Remove __del argument to file descriptor constructor.
* config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
bool argument.
* config/io/basic_file_stdio.cc: Same.
From-SVN: r74379
2003-12-07 03:46:14 +00:00
Benjamin Kosnik
4213442917
re PR libstdc++/13189 (<ext/enc_filebuf.h> fails to compile)
...
2003-12-05 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/13189
* include/ext/enc_filebuf.h: Fix.
* include/bits/fstream.tcc: Tweak formatting.
* include/bits/postypes.h: Same.
* include/bits/sstream.tcc: Same.
* include/bits/streambuf.tcc: Same.
* testsuite/ext/stdio_filebuf.cc: Split.
* testsuite/ext/stdio_filebuf_2.cc: Split.
* testsuite/ext/stdio_sync_filebuf_char.cc: Split.
* testsuite/ext/stdio_sync_filebuf_wchar_t.cc: Split.
* testsuite/ext/enc_filebuf/char/13189.cc: New.
* testsuite/ext/enc_filebuf/wchar_t/13189.cc: New.
* testsuite/ext/stdio_filebuf/char/1.cc: New.
* testsuite/ext/stdio_filebuf/char/2.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/1.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: New.
From-SVN: r74313
2003-12-05 06:54:24 +00:00
Benjamin Kosnik
82fa4538b5
re PR libstdc++/13284 (126 g++ failures due to lrand48 not defined)
...
2003-12-04 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/13284
* include/bits/stl_algo.h (__random_number): Remove.
(random_shuffle): Use rand, as permitted by DR 395.
* include/ext/algorithm: Same.
* linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
* acconfig.h: Same.
* crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
* config.h.in: Regenerated.
* configure: Same.
* aclocal.m4: Same.
From-SVN: r74288
2003-12-04 19:37:21 +00:00
Paolo Carlini
5c89246dfb
PR libstdc++/12882 (partial)
...
2003-11-21 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12882 (partial)
* acinclude.m4 (GLIBCXX_CHECK_LFS): Check fseeko64
and ftello64 too.
* include/ext/stdio_sync_filebuf.h (seekoff): Use fseeko64
and ftello64 if available.
* aclocal.m4: Regenerate.
* configure: Ditto.
From-SVN: r73815
2003-11-21 20:30:12 +00:00
Paolo Carlini
dfad48c6e8
re PR libstdc++/12875 (Weird behaviour in basic_filebuf::setbuf())
...
2003-11-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12875
* include/bits/fstream.tcc (setbuf): Don't do anything
after open(), in particular don't discard data.
(_M_allocate_internal_buffer): Tweak to not allocate memory
in case the buffer is provided by the user via setbuf.
* include/ext/stdio_filebuf.h: Tweak comment.
* testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: New.
* testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Tweak, now
setbuf does nothing after open().
* testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
From-SVN: r73477
2003-11-12 01:14:34 +00:00
Benjamin Kosnik
285b36d6a5
[multiple changes]
...
2003-11-11 Doug Gregor <gregod@cs.rpi.edu>
* docs/html/debug.html: Document libstdc++ debug mode.
* docs/html/debug_mode.html: Document libstdc++ debug mode design.
* docs/html/test.html: Document how to test under debug mode.
* docs/html/17_intro/howto.html: Document debug-mode macros.
* include/Makefile.am: Install debug-mode headers.
* src/Makefile.am: Include debug.cc.
* include/bits/basic_string.tcc:
(basic_string::_S_construct): Fix NULL pointer check.
(__is_null_pointer): New.
Add precondition annotations.
* include/bits/stream_iterator.h (istream_iterator,
ostream_iterator): Added precondition annotations.
* include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
* include/bits/stl_queue.h (queue, priority_queue): Ditto.
* include/bits/stl_stack.h (stack): Ditto.
* include/bits/basic_string.h (basic_string): Ditto.
* include/bits/basic_string.tcc (basic_string): Ditto.
* include/std/std_memory.h (auto_ptr): Ditto.
* include/std/std_valarray.h (valarray): Ditto.
* include/bits/stl_algo.h: Added algorithm precondition
annotations.
* include/bits/stl_algobase.h: Added algorithm precondition
annotations.
* include/bits/stl_numeric.h: Ditto.
* include/ext/algorithm: Added algorithm precondition
annotations.
(__is_heap): Moved away from here.
* include/bits/stl_heap.h: Added algorithm precondition
annotations.
(__is_heap): Moved to the top of this file.
(__is_heap): Added iterator range overloads.
* testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
with changes in std_memory.h.
* testsuite/23_containers/list/operators/4.cc: Don't verify
performance guarantees when in debug mode.
* testsuite/23_containers/bitset/invalidation/1.cc: New.
* testsuite/23_containers/deque/invalidation/1.cc: New.
* testsuite/23_containers/deque/invalidation/2.cc: New.
* testsuite/23_containers/deque/invalidation/3.cc: New.
* testsuite/23_containers/deque/invalidation/4.cc: New.
* testsuite/23_containers/list/invalidation/1.cc: New.
* testsuite/23_containers/list/invalidation/2.cc: New.
* testsuite/23_containers/list/invalidation/3.cc: New.
* testsuite/23_containers/list/invalidation/4.cc: New.
* testsuite/23_containers/map/invalidation/1.cc: New.
* testsuite/23_containers/map/invalidation/2.cc: New.
* testsuite/23_containers/multimap/invalidation/1.cc: New.
* testsuite/23_containers/multimap/invalidation/2.cc: New.
* testsuite/23_containers/multiset/invalidation/1.cc: New.
* testsuite/23_containers/multiset/invalidation/2.cc: New.
* testsuite/23_containers/set/invalidation/1.cc: New.
* testsuite/23_containers/set/invalidation/2.cc: New.
* testsuite/23_containers/vector/invalidation/1.cc: New.
* testsuite/23_containers/vector/invalidation/2.cc: New.
* testsuite/23_containers/vector/invalidation/3.cc: New.
* testsuite/23_containers/vector/invalidation/4.cc: New.
* testsuite/25_algorithms/heap.cc: Don't verify
performance guarantees when in debug mode.
* include/debug/bitset: New.
* include/debug/debug.h: New.
* include/debug/deque: New.
* include/debug/formatter.h: New.
* include/debug/hash_map: New.
* include/debug/hash_map.h: New.
* include/debug/hash_multimap.h: New.
* include/debug/hash_set: New.
* include/debug/hash_set.h: New.
* include/debug/hash_multiset.h: New.
* include/debug/list: New.
* include/debug/map: New.
* include/debug/map.h: New.
* include/debug/multimap.h: New.
* include/debug/multiset.h: New.
* include/debug/safe_base.h: New.
* include/debug/safe_iterator.h: New.
* include/debug/safe_iterator.tcc: New.
* include/debug/safe_sequence.h: New.
* include/debug/set: New.
* include/debug/set.h: New.
* include/debug/string: New.
* include/debug/vector: New.
* src/debug.cc: New.
* config/linker-map.gnu: Add debug mode symbols.
2003-11-11 Benjamin Kosnik <bkoz@redhat.com>
* src/string-inst.cc: Tweak namespaces.
* src/misc-inst.cc: Same.
* docs/html/debug.html: Edits.
* config/link-map.gnu: Remove cruft.
* include/bits/c++config: Add in namespace associations.
* include/std/std_bitset.h: Adjust namespace to __gnu_norm,
comment tweaks.
* include/bits/deque.tcc: Same.
* include/bits/list.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/vector.tcc: Same.
* include/std/std_algorithm.h: Remove markup comments.
* include/std/std_functional.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_numeric.h: Same.
* include/std/std_utility.h: Same.
* include/bits/stl_queue.h: Formatting tweaks.
* include/bits/stl_stack.h: Same.
* include/std/std_deque.h: Include debugging version in debug mode.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_queue.h: Use deque, vector.
* include/std/std_stack.h: Same.
From-SVN: r73459
2003-11-11 20:09:16 +00:00
Benjamin Kosnik
6b5a2662c7
mt_allocator.h: Change include to gthr.h.
...
2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/mt_allocator.h: Change include to gthr.h.
* include/ext/rope: Same. Add _Refcount_base definitions.
* include/ext/pool_allocator.h: Adjust namespaces.
* include/bits/stl_threads.h (_Refcount_base): Move.
Put remaining into namespace __gnu_cxx.
From-SVN: r72763
2003-10-21 18:01:37 +00:00
Benjamin Kosnik
9540958eff
re PR libstdc++/10081 (basic_ios::_M_cache_locale leaves NULL members in the face of unknown locales)
...
2003-10-20 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/10081
* testsuite_hooks.h: Add pod_type, ctype and numpunct specializations.
* testsuite_hooks.cc: Same.
* 22_locale/numpunct/members/pod/1.cc: Edit.
* 22_locale/numpunct/members/pod/2.cc: Same.
* 27_io/basic_istream/sentry/char/3983-fstream.cc: Move ...
* 27_io/basic_istream/sentry/char/3983-sstream.cc: Move ...
* 27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc: Here.
* 27_io/basic_istream/extractors_character/pod/3983-2.cc: Here.
* 27_io/basic_istream/extractors_other/pod/3983-3.cc: Here.
* 27_io/basic_ostream/sentry/char/3983-fstream.cc: Remove.
* 27_io/basic_ostream/sentry/char/3983-sstream.cc: Remove.
* 27_io/basic_istream/sentry/pod/1.cc: New.
* 27_io/basic_ostream/sentry/pod/1.cc: New.
* 21_strings/basic_string/inserters_extractors/pod/10081-in.cc: New.
* 21_strings/basic_string/inserters_extractors/pod/10081-out.cc: New.
From-SVN: r72728
2003-10-20 22:11:40 +00:00
Paolo Carlini
2811b82372
stdio_sync_filebuf.h: Don't include the whole <fstream>, only <streambuf> and <cstdio>.
...
2003-10-04 Paolo Carlini <pcarlini@unitus.it>
Petur Runolfsson <peturr02@ru.is>
* include/ext/stdio_sync_filebuf.h: Don't include the whole
<fstream>, only <streambuf> and <cstdio>.
Co-Authored-By: Petur Runolfsson <peturr02@ru.is>
From-SVN: r72090
2003-10-04 10:51:34 +00:00
Petur Runolfsson
149639d4f1
re PR libstdc++/12048 (unget does not work)
...
2003-09-03 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/12048
* include/ext/stdio_sync_filebuf.h
(stdio_sync_filebuf::_M_unget_buf): Declare it.
(stdio_sync_filebuf::stdio_sync_filebuf): Initialize _M_unget_buf.
(stdio_sync_filebuf::uflow): Store the returned character in
_M_unget_buf.
(stdio_sync_filebuf::pbackfail): If argument is eof(), pass
_M_unget_buf to syncungetc(). Set _M_unget_buf to eof().
(stdio_sync_filebuf<char>::xsgetn): Store last read character in
_M_unget_buf, if any, else eof().
(stdio_sync_filebuf<wchar_t>::xsgetn: Store last read character in
_M_unget_buf, if any, else eof().
* testsuite/27_io/objects/char/12048.cc: Rename to...
* testsuite/27_io/objects/char/12048-1.cc: ...this.
* testsuite/27_io/objects/char/12048-2.cc: New test.
* testsuite/27_io/objects/char/12048-3.cc: New test.
* testsuite/27_io/objects/char/12048-4.cc: New test.
* testsuite/27_io/objects/char/12048-5.cc: New test. XFAIL.
* testsuite/27_io/objects/wchar_t/12048-1.cc: New test.
* testsuite/27_io/objects/wchar_t/12048-2.cc: New test.
* testsuite/27_io/objects/wchar_t/12048-3.cc: New test.
* testsuite/27_io/objects/wchar_t/12048-4.cc: New test.
* testsuite/27_io/objects/wchar_t/12048-5.cc: New test. XFAIL.
* testsuite/ext/stdio_sync_filebuf_char.cc
(test02, test03, test04, test05): New tests.
* testsuite/ext/stdio_sync_filebuf_wchar_t.cc
(test02, test03, test04, test05): New tests.
2003-09-03 Petur Runolfsson <peturr02@ru.is>
* docs/html/27_io/howto.html: setbuf(0, 0) has no effect on
stringbuf or strstreambuf. Fix typos.
From-SVN: r71026
2003-09-03 14:54:03 +00:00
Petur Runolfsson
1b391ba942
ropeimpl.h: #include <ostream> instead of <iostream>
...
2003-08-18 Petur Runolfsson <peturr02@ru.is>
* include/ext/ropeimpl.h:
#include <ostream> instead of <iostream>
From-SVN: r70562
2003-08-19 08:03:09 +00:00
Benjamin Kosnik
2803847d40
basic_ios.h: Remove *_iter typedefs, change num* typedefs to num_*.
...
2003-08-11 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_ios.h: Remove *_iter typedefs, change num*
typedefs to num_*.
* include/bits/basic_ios.tcc: Same.
* include/bits/istream.tcc: Same.
* include/bits/locale_facets.h: Same.
* include/bits/ostream.tcc: Same.
* include/std/std_istream.h: Same.
* include/std/std_ostream.h: Same.
* testsuite/26_numerics/complex_inserters_extractors.cc: Fix.
* include/ext/rope: Remove build warning.
From-SVN: r70357
2003-08-12 03:46:18 +00:00
Benjamin Kosnik
db5eed1873
pod_char_traits.h: Add state template argument.
...
2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pod_char_traits.h: Add state template argument.
From-SVN: r69492
2003-07-17 04:01:28 +00:00
Gerald Pfeifer
94b7906a3a
hash_map (class hash_multimap): Remove extra semicolons from __glibcxx_class_requires3 entries.
...
* include/ext/hash_map (class hash_multimap): Remove extra
semicolons from __glibcxx_class_requires3 entries.
* include/ext/hash_set (class hash_set): Ditto.
(class hash_multiset): Ditto.
From-SVN: r69451
2003-07-16 14:23:08 +00:00
Mark Mitchell
f2ffecb112
c_locale.h: Include <cstdlib> and <cstring>.
...
* config/locale/generic/c_locale.h: Include <cstdlib> and
<cstring>.
* include/bits/boost_concept_check.h: Add this-> to unqualified
method calls.
* include/bits/deque.tcc: Likewise.
* include/bits/locale_facets.h : Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/stl_algo.h: Likewise.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/vector.tcc: Likewise.
* include/ext/rope: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/ext/stdio_filebuf.h: Likewise.
From-SVN: r69315
2003-07-14 02:52:05 +00:00
Benjamin Kosnik
cde6384093
locale_facets.tcc: Use function object for __use_cache instead of template function.
...
2003-07-09 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc: Use function object for
__use_cache instead of template function. Partially specialize for
__numpunct<_CharT>.
* include/bits/locale_classes.h: Update friend declaration for
__use_cache.
(_M_install_cache): No throw exception specs.
* src/locale.cc: Remove __use_cache specializations.
* include/ext/pod_char_traits.h (length): Tweak.
* include/bits/locale_facets.h (__numpunct_cache): Remove
char_type typedef.
* testsuite/testsuite_hooks.h (pod_unsigned_int): Remove.
(pod_long): Remove.
* testsuite/22_locale/numpunct/members/char/cache_1.cc: New.
* testsuite/22_locale/numpunct/members/char/cache_2.cc: New.
* testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: New.
* testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: New.
* testsuite/22_locale/numpunct/members/pod/1.cc: New.
* testsuite/22_locale/numpunct/members/pod/2.cc: New.
From-SVN: r69177
2003-07-10 06:21:13 +00:00
Benjamin Kosnik
9e7facfd47
pod_char_traits.cc: New.
...
2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/ext/pod_char_traits.cc: New.
* include/ext/pod_char_traits.h: New.
* include/Makefile.am (ext_headers): Add pod_char_traits.h.
* include/Makefile.in: Regenerate.
* docs/html/21_strings/howto.html: Update.
From-SVN: r69115
2003-07-09 00:40:29 +00:00
Phil Edwards
481668695a
allocator_traits.h: Fix doxygen markup.
...
2003-07-06 Phil Edwards <pme@gcc.gnu.org>
* include/bits/allocator_traits.h: Fix doxygen markup.
* include/ext/mt_allocator.h: Likewise.
From-SVN: r68994
2003-07-06 04:37:22 +00:00
Benjamin Kosnik
3d7c150e3f
Move from CPP to CXX.
...
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
Move from CPP to CXX.
* include/bits/c++config: Move to GLIBCXX from GLIBCPP.
* testsuite/Makefile.am: Same.
* testsuite/Makefile.in: Regenerate.
* po/Makefile.am: Same.
* po/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Same.
* libsupc++/Makefile.in: Regenerate.
* libmath/Makefile.am: Same.
* libmath/Makefile.in: Regenerate.
* include/Makefile.am: Same.
* include/Makefile.in: Regenerate.
* src/Makefile.am: Same.
* src/Makefile.in: Regenerate.
* acconfig.h: Same.
* configure.host: Same.
* configure.in: Same.
* configure: Regenerate.
* acinclude.m4: Same.
* aclocal.m4: Same.
* src: Change all files in this directory.
* testsuite: Same.
* include: Same, standardize include guards.
* config: Same.
* libsupc++: Same.
From-SVN: r68958
2003-07-05 04:05:45 +00:00
Paolo Carlini
9dd90ac6b2
stl_list.h: Fully qualify standard functions with std::, thus avoiding Koenig lookup.
...
2003-07-04 Paolo Carlini <pcarlini@unitus.it>
* include/bits/stl_list.h: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/bits/stl_queue.h: Likewise.
* include/bits/stl_raw_storage_iter.h: Likewise.
* include/bits/stl_tempbuf.h: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/stl_uninitialized.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/ext/rope: Change includes order.
From-SVN: r68919
2003-07-04 12:10:13 +00:00
Paolo Carlini
71b460210a
Nathan C.
...
2003-06-24 Paolo Carlini <pcarlini@unitus.it>
Nathan C. Myers <ncm-nospam@cantrip.org>
* include/std/std_fstream.h (_M_filepos): Remove.
(_M_reading, _M_writing): New, encode the various I/O modes:
'read', 'write' and 'uncommitted'.
(sync): If there is something to flush, do it, then go to
'uncommitted' mode.
* include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
with three different cases: __off > 0 (upon underflow),
__off == 0 (upon overflow), __off == -1 (upon open, setbuf,
seekoff/pos).
(_M_underflow): Don't call overflow, set _M_reading to true
on success, tweak.
(pbackfail): Set _M_reading to true on pback creation, tweak.
(overflow): Don't seek, deal with overflow in 'uncommitted' mode,
set _M_writing to true on success, tweak.
(seekoff): Simplify, set _M_reading, _M_writing to false, call
_M_set_buffer(-1) ('uncommitted').
(open, close, setbuf): Set _M_reading, _M_writing to false and
call _M_set_buffer(-1), tweak.
(basic_filebuf): Don't set _M_buf_unified.
(_M_destroy_internal_buffer): Don't call setg and setp.
* include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
_M_writing and _M_set_buffer(-1).
* include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
_M_out_lim, _M_buf_unified): Remove.
(basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
(setp): Don't set _M_out_lim.
* testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
upon open the mode is 'uncommitted' and therefore the put area
pointers are null.
* testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
* testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
* include/bits/fstream.tcc (showmanyc): Use only the
documented derivation interface to basic_streambuf (gptr(),
setg(), etc.) to work right with user specializations.
* include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
* include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
Likewise.
* include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
xsgetn): Likewise.
Co-Authored-By: Nathan C. Myers <ncm-nospam@cantrip.org>
From-SVN: r68420
2003-06-24 13:48:11 +00:00
Loren J. Rittle
3d57d7bafa
* include/ext/mt_allocator.h: Portability.
...
From-SVN: r68406
2003-06-24 06:34:34 +00:00
Benjamin Kosnik
c37514ff62
allocator-inst.cc: Explicitly instantiate.
...
2003-06-12 Benjamin Kosnik <bkoz@redhat.com>
* src/allocator-inst.cc: Explicitly instantiate.
* include/ext/pool_allocator.h: Inhibit implicit instantiations.
Tweaks.
* config/linker-map.gnu: Add __pool_alloc bits. Tweaks.
From-SVN: r67882
2003-06-13 05:45:57 +00:00