OSDN Git Service

2006-09-18 Paolo Carlini <pcarlini@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index 4927457..984ded4 100644 (file)
@@ -1,3 +1,968 @@
+2006-09-18  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (_M_group_int): Remove
+       redundant using-declaration.
+
+2006-09-18  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/ext/typelist.h (cond_type): Remove, use __conditional_type.
+
+2006-09-18  Benjamin Kosnik  <bkoz@redhat.com>
+           Peter Doerfler  <gcc@pdoerfler.com>
+           Paolo Carlini  <pcarlini@suse.de>
+       
+       * include/ext/type_traits.h: New. 
+       (__conditional_type): New.
+       (__numeric_traits): New.
+       (__add_unsigned): New.
+       (__remove_unsigned): New.
+       (__enable_if): New.
+       * include/Makefile.am: Add.
+       * include/Makefile.in: Regenerate.
+       * include/ext/pb_ds/detail/type_utils.hpp: Use ext include,
+       remove duplicates.
+       * include/tr1/hashtable_policy.h (IF): Use __conditional_type.
+       (_Max_digits10): Same.
+       (identity): Use _Identity.
+       (extract1st): Use _Select1st.
+       * include/tr1/random (_Select): Use __conditional_type.
+       (_To_Unsigned_Type): Use __add_unsigned. Linebreak fixups.
+       * include/bits/locale_facets.tcc (__to_unsigned_type): Remove, use
+       __add_unsigned.
+       * include/tr1/random.tcc: Fixups as above.
+       * include/tr1/unordered_map: Same.
+       * include/tr1/hashtable: Same.
+       * include/tr1/unordered_set: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       standard_policies.hpp: Same.
+       * include/ext/pb_ds/detail/standard_policies.hpp: Same.
+       * include/ext/pb_ds/detail/typelist/typelist_filter.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
+       * include/ext/pb_ds/detail/type_utils.hpp: Same.
+       * include/ext/pb_ds/trie_policy.hpp: Same.
+       * docs/html/ext/pb_ds/string_trie_e_access_traits.html: Same.
+       
+       * include/bits/cpp_type_traits.h (__enable_if): Move to ext, make
+       boolean argument first. 
+       * include/bits/locale_facets.h: Fixups for __enable_if argument
+       and namespace switch.
+       * include/bits/stl_algobase.h: Same.
+       * include/bits/stl_algo.h: Same.
+       * include/bits/stl_iterator.h: Same.
+       * include/bits/streambuf_iterator.h: Same.
+       * include/debug/safe_iterator.h: Same.
+       * include/tr1/hashtable_policy.h: Same.
+       * include/tr1/cmath: Same.
+       * include/tr1/functional: Same.
+       * include/tr1/functional_iterate.h: Same.
+       * include/std/std_streambuf.h: Same.
+       * include/c_std/std_cmath.h: Same.
+       * testsuite/util/testsuite_tr1.h: Same.
+       * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
+       
+2006-09-18  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/29063
+       * include/bits/valarray_array.h: Fix typo, undefine
+       _DEFINE_ARRAY_FUNCTION.
+       * include/std/std_valarray.h: Undefine _DEFINE_BINARY_OPERATOR.
+
+2006-09-14  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/bits/concurrence.h (__mutex::__mutex): Pass address of
+       mutex to *_MUTEX_INIT_FUNCTION.
+       
+2006-09-13  Benjamin Kosnik  <bkoz@redhat.com> 
+
+       * include/bits/atomicity.h: Move to...
+       * include/ext/atomicity.h: ...here.     
+       * include/bits/concurrence.h: Move to...
+       * include/ext/concurrence.h: ...here.
+       * include/Makefile.am (ext_headers): Additions.
+       (bits_headers): Subtractions.
+       * include/Makefile.in: Regenerate.
+
+       * include/ext/bitmap_allocator.h (_Mutex), __threads_enabled,
+       _Lock, _Auto_Lock): Subsume into...
+       * include/bits/concurrence.h (__mutex): ..this. Error check
+       locking and unlocking.  
+       (lock): Uglify to...
+       (__scoped_lock): Use __mutex. 
+       (__glibcxx_mutex_define_initialized): Remove.
+       (__glibcxx_mutex_type): Remove.
+
+       * include/tr1/boost_shared_ptr.h: Formating tweaks, adjustments.
+       (_Lock_policy): Move from here...
+       * include/ext/concurrence.h: ... to here.
+       (__shared_ptr_default_lock_mode): To __default_lock_policy.
+       (_S_lockfree): To _S_atomic.
+       Document.
+
+       * libsupc++/guard.cc (static_mutex): Subsume into and fixup for...
+       * include/ext/concurrence.h (__recursive_mutex): ...this. Error
+       check locking and unlocking.
+       * libsupc++/eh_alloc.cc: Use __scoped_lock.
+
+       * config/os/aix/atomicity.h: Fixups for include paths, mutex to
+       __scoped_mutex change, removal of locking defines.
+       * config/os/irix/atomicity.h: Same.
+       * config/cpu/cris/atomicity.h: Same.
+       * config/cpu/m68k/atomicity.h: Same.
+       * config/cpu/hppa/atomicity.h: Same.
+       * config/cpu/mips/atomicity.h: Same.
+       * config/cpu/sparc/atomicity.h: Same.
+       * config/cpu/i386/atomicity.h: Same.
+       * config/cpu/i486/atomicity.h: Same.
+       * config/cpu/sh/atomicity.h: Same.
+       * config/cpu/generic/atomicity_mutex/atomicity.h: Same.
+       * include/ext/pool_allocator.h: Same.
+       * include/ext/bitmap_allocator.h: Same.
+       * include/ext/rc_string_base.h: Same.
+       * include/ext/mt_allocator.h: Same.
+       * include/bits/locale_classes.h: Same.
+       * include/bits/basic_string.h: Same.
+       * include/bits/ios_base.h: Same.
+       * include/tr1/memory: Same.
+       * src/pool_allocator.cc: Same.
+       * src/mt_allocator.cc: Same.
+       * src/locale_init.cc: Same.
+       * src/ios.cc: Same.
+       * src/locale.cc: Same.
+       * src/bitmap_allocator.cc: Same.
+       * src/ios_init.cc: Same.
+       * src/debug.cc: Same.
+       
+2006-09-12  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * libsupc++/eh_globals.cc: Remove __gnu_internal.
+       * config/io/basic_file_stdio.cc: Same.
+       * config/abi/compatibility.h: Same.
+       * config/cpu/generic/atomicity_mutex/atomicity.h: Same.
+       * config/cpu/sh/atomicity.h: Same.
+       
+2006-09-10  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_heap.h (sort_heap): Iterator post-decrement is
+       only required to be convertible to the iterator type.
+
+2006-09-08  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random.tcc (poisson_distribution<>::operator()):
+       Avoid potential warnings when _IntType is unsigned.
+
+2006-09-08  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/debug/debug.h (_GLIBCXX_DEBUG_ONLY): New.
+       * include/ext/bitmap_allocator.h (_BALLOC_SANITY_CHECK,
+       _BALLOC_ASSERT): Remove. Use _GLIBCXX_DEBUG,
+       _GLIBCXX_DEBUG_ASSERT.
+       * include/ext/pb_ds/hash_policy.hpp (PB_DS_DBG_ASSERT): Convert to
+       _GLIBCXX_DEBUG_ASSERT. Formatting corrections.
+       (PB_DS_DBG_VERIFY): Remove, unused.
+       (PB_DS_DBG_ONLY): Convert to _GLIBCXX_DEBUG blocks.
+       * include/ext/pb_ds/detail/resize_policy/
+       hash_load_check_resize_trigger_imp.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_base_/
+       insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_base_/
+       binomial_heap_base_.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_base_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_base_/
+       split_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       constructor_destructor_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       erase_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       insert_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       constructor_destructor_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       insert_store_hash_fn_imps.hpp: Same.    
+       * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       debug_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       constructor_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       debug_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/cc_hash_table_map_/
+       erase_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
+       * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
+       * include/ext/pb_ds/detail/unordered_iterator/
+       const_point_iterator.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/head.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
+       * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/
+       split_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       constructor_destructor_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       erase_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       insert_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       resize_store_hash_fn_imps.hpp: Same.    
+       * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       constructor_destructor_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       insert_store_hash_fn_imps.hpp: Same.    
+       * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       debug_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       constructor_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       debug_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       erase_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/gp_hash_table_map_/
+       resize_no_store_hash_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/types_traits.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/
+       constructors_destructor_fn_imps.hpp: Same.      
+       * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
+       * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pairing_heap_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
+       * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
+       * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
+       * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
+       erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
+       left_child_next_sibling_heap_.hpp: Same.
+       * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
+       const_iterator.hpp: Same.       
+       * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
+       insert_fn_imps.hpp: Same.       
+       * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
+       debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
+       const_point_iterator.hpp: Same.
+       * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
+       * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/thin_heap_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Same.
+       * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
+       * include/ext/pb_ds/detail/ov_tree_map_/
+       constructors_destructor_fn_imps.hpp: Same.      
+       * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
+       * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/map_debug_base.hpp: Same.
+       * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
+       * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
+       * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
+       * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/splay_tree_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
+       * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
+       * include/ext/pb_ds/detail/list_update_map_/
+       constructor_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/list_update_map_/
+       iterators_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rc_binomial_heap_/
+       rc_binomial_heap_.hpp: Same.
+       * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rc_binomial_heap_/
+       constructors_destructor_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
+       * include/ext/pb_ds/detail/rc_binomial_heap_/
+       split_join_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rb_tree_map_/
+       constructors_destructor_fn_imps.hpp: Same.      
+       * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
+       * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
+       * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
+       * testsuite/util/regression/res_mng/forced_exception.hpp: Same.
+       * testsuite/util/regression/res_mng/dbg_ex_allocator_base.hpp: Same.
+       * testsuite/util/regression/res_mng/dbg_ex_allocator.hpp: Same.
+       * testsuite/util/rng/twister_rand_gen.cc
+       * testsuite/util/native_type/assoc/native_multimap.hpp: Same.
+       * testsuite/util/native_type/assoc/native_hash_multimap.hpp: Same.
+
+2006-09-05  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/basic_string.tcc (find(const _CharT*, size_type,
+       size_type)): Robustify.
+       * include/ext/vstring.tcc (find(const _CharT*, size_type,
+       size_type)): Likewise.
+
+2006-09-05  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/basic_string.tcc (find(const _CharT*, size_type,
+       size_type)): Reimplement in terms of traits::eq and traits::compare.
+       * include/ext/vstring.tcc (find(const _CharT*, size_type,
+       size_type)): Likewise.
+       * src/string-inst.cc: Remove unneded std::search instantiation.
+
+2006-09-04  Benjamin Kosnik  <bkoz@redhat.com>
+
+       PR c++/28871
+       * include/ext/bitmap_allocator.h: Add comment for end of anonymous
+       namespace.
+       * include/ext/rope: Same.
+       * include/bits/cpp_type_traits.h: Same.
+       * include/tr1/tuple: Same.
+       * include/tr1/functional_iterate.h: Same.
+
+       * include/bits/cpp_type_traits.h: Revert anonymous namespace
+       change, use nested detail instead.
+
+       * testsuite/lib/libstdc++.exp (libstdc++_init): PCHFLAGS revert to
+       stdc++.h.
+       
+2006-09-04  Paolo Carlini  <pcarlini@suse.de>
+
+       * src/mt_allocator.cc (__pool<true>::_M_reclaim_block): Do
+       not name a variable __used, badname on BSD.
+
+2006-09-02  Paolo Carlini  <pcarlini@suse.de>
+           Richard Guenther  <rguenther@suse.de>
+
+       PR libstdc++/24469
+       * src/mt_allocator.cc (__pool<true>::_M_reserve_block,
+       __pool<true>::_M_reclaim_block): Fix the logic to avoid
+       races, exploit atomic counters stored in second part of
+       the memory pointed by _M_used.
+       (__pool<true>::_M_initialize): Adjust _M_used allocation.
+       * include/ext/mt_allocator.h (__pool<true>::_Bin_record):
+       Update comment.
+
+2006-08-31  Benjamin Kosnik  <bkoz@redhat.com>
+
+       PR libstdc++/28671 continued
+       * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't use
+       CXXFLAGS when checking for atomic builtins.
+       * configure: Regenerate.
+       * include/bits/atomicity.h: Revert.
+       
+2006-08-31  Richard Guenther  <rguenther@suse.de>
+
+       * include/ext/mt_allocator.h: Remove volatile qualifiers
+       from data members and corresponding locals and function
+       signatures.
+
+2006-08-31  Paolo Carlini  <pcarlini@suse.de>
+
+       * config/abi/pre/gnu.ver: Correct atomic helper function signature
+       for case where _Atomic_word is long.
+
+2006-08-31  Benjamin Kosnik  <bkoz@redhat.com>
+
+       PR libstdc++/28671
+       * include/bits/atomicity.h (__exchange_and_add): Declare only.
+       (__atomic_add): Same.
+       * config/cpu/generic/atomicity_builtins/atomicity.h: Remove comment.
+       
+2006-08-30  Benjamin Kosnik  <bkoz@redhat.com>
+            Richard Guenther  <rguenther@suse.de>
+       
+       * config/abi/pre/gnu.ver: Spell out exact signatures for atomic
+       access functions.
+
+       * include/bits/atomicity.h (__atomic_add_dispatch): Remove
+       volatile qualification for _Atomic_word argument.
+       (__atomic_add_single): Same.
+       (__exchange_and_add_dispatch): Same.
+       (__exchange_and_add_single): Same.
+       
+2006-08-29  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (subtract_with_carry_01<>::_M_initialize_npows):
+       New.
+       (subtract_with_carry_01<>::subtract_with_carry_01(),
+       subtract_with_carry_01<>::subtract_with_carry_01(unsigned long),
+       subtract_with_carry_01<>::subtract_with_carry_01(_Gen&)): Use it.
+       * include/tr1/random.tcc: Define.
+
+       * include/tr1/random (xor_combine<>::_M_initialize_max()): New.
+       (xor_combine<>::xor_combine(), xor_combine<>::xor_combine(const
+       base1_type&, const base2_type&), xor_combine<>::xor_combine(unsigned
+       long), xor_combine<>::xor_combine(_Gen&)): Use it.
+       (xor_combine<>::min, xor_combine<>::max): Adjust.
+       * include/tr1/random.tcc: Define.
+
+2006-08-29  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * acinclude.m4(glibcxx_PCHFLAGS): Set to stdtr1c++.h.
+       * configure: Regenerate.
+       
+       * scripts/check_compile: Output current compile line.
+       
+2006-08-28  Benjamin Kosnik  <bkoz@redhat.com>
+
+       PR libstdc++/23773 partial
+       * docs/html/abi.html: Update.
+
+2006-08-28  Roger Sayle  <roger@eyesopen.com>
+           Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_algo.h (__heap_select, __introselect): New.
+       (nth_element): New implementation.
+       (partial_copy): Use __heap_select.
+       * testsuite/performance/25_algorithms/nth_element_worst_case.cc: New.
+
+2006-08-28  Paolo Carlini  <pcarlini@suse.de>
+           Roger Sayle  <roger@eyesopen.com>
+
+       * testsuite/25_algorithms/nth_element/2.cc: New.
+
+2006-08-27  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/28830
+       * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
+       lockfree_weaktoshared.cc: Rename to...
+       * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
+       default_weaktoshared.cc: ... this; test the default base class.
+       * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
+       mutex_weaktoshared.cc: Run like the other thread tests.
+
+2006-08-25  Paolo Carlini  <pcarlini@suse.de>
+
+       * docs/html/ext/tr1.html: Update.
+
+2006-08-25  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (bernoulli_distribution::operator()): Fix
+       wrt generators returning integers.
+       (uniform_int<>::_M_call): Add.
+       (uniform_int<>::operator()): Use it.
+
+       * include/tr1/random (_Adaptor<>::min, _Adaptor<>::max): Add.
+       (_Adaptor<>::operator()): Allow for nonzero _M_g.min().
+
+       * include/tr1/random.tcc (linear_congruential<>::min, max):
+       Move inline...
+       (__mod): Move ...
+       * include/tr1/random: ... here.
+       (struct _Mod): Declare.
+
+       * include/tr1/random (struct _To_Unsigned_Type): Only declare,
+       move...
+       * include/tr1/random.tcc: ... here.
+
+2006-08-22  Phillip Jordan  <phillip.m.jordan@gmail.com>
+
+       *include/tr1/boost_shared_ptr.h: Added locking policy to
+       tr1::shared_ptr<> and related classes.
+       * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread: New.
+       * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
+       lockfree_weaktoshared.cc: New.
+       * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
+       mutex_weaktoshared.cc: New.
+       *testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
+       shared_ptr_neg.cc: Modify.
+       
+2006-08-22  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random.tcc (subtract_with_carry_01<>::
+       seed(_Gen&, false_type)): Fix _M_carry initialization.
+       
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/default.cc: Qualify 1 as 1UL.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/gen1.cc: Likewise.
+
+2006-08-22  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (class subtract_with_carry_01<>): Add.
+       * include/tr1/random.tcc (subtract_with_carry_01<>::
+       seed(unsigned long), subtract_with_carry_01<>::
+       seed(_Gen&, false_type), subtract_with_carry_01<>::
+       operator(), operator<<(std::basic_ostream<>&, const
+       subtract_with_carry_01<>&), operator>>(std::basic_istream<>&,
+       subtract_with_carry_01<>&)): Define.
+       * testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc:
+       New.
+       * testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc:
+       Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/cons/seed1.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/cons/seed2.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/cons/default.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/cons/gen1.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/requirements/typedefs.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/operators/equal.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/operators/not_equal.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/operators/serialize.cc: Likewise.
+
+       * docs/html/ext/howto.html: Add two implemented TR1 issues.
+
+       * include/tr1/random.tcc (struct _To_Unsigned_Type<>): Move...
+       * include/tr1/random: ... here.
+       (class subtract_with_carry<>): Use it everywhere.
+
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/seed1.cc: Qualify 1 as 1UL.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/seed2.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/default.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/gen1.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/requirements/typedefs.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/operators/equal.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/operators/not_equal.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/operators/serialize.cc: Likewise.
+
+       * include/tr1/random (class binomial_distribution<>): Reorder the
+       data members to save space.
+
+2006-08-20  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (gamma_distribution<>::_M_initialize,
+       gamma_distribution<>::_M_l_d): Add.
+       (gamma_distribution<>::gamma_distribution(const result_type&),
+       operator>>(std::basic_istream<>&, gamma_distribution&)): Use it.
+       include/tr1/random.tcc (gamma_distribution<>::_M_initialize):
+       Define.
+       (gamma_distribution<>::operator()): Adjust.
+
+       * include/tr1/random (geometric_distribution<>::_M_initialize): Add.
+       (geometric_distribution<>::geometric_distribution(const _RealType&),
+       operator>>(std::basic_istream<>&, geometric_distribution&)): Use it.
+
+2006-08-18  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (class binomial_distribution<>): Add.
+       * include/tr1/random.tcc (binomial_distribution<>::operator(),
+       operator<<(std::basic_ostream<>&, const binomial_distribution<>&),
+       operator>>(std::basic_istream<>&, binomial_distribution<>&,
+       binomial_distribution<>::_M_waiting(), binomial_distribution<>::
+       _M_initialize()): Define.
+       * testsuite/tr1/5_numerical_facilities/random/binomial_distribution/
+       requirements/typedefs.cc: New.
+
+       * include/tr1/random (geometric_distribution<>::
+       geometric_distribution(const _RealType&)): Fix DEBUG_ASSERT
+       limits.
+
+       * include/tr1/random (poisson_distribution): Add normal_distribution
+       member, adjust consistently; minor tweaks and rearrangements of the
+       arithmetic.
+       (operator>>(std::basic_istream<>&, poisson_distribution<>&)): Move
+       out of line.
+       * include/tr1/random.tcc: Adjust.
+
+       * include/tr1/random.tcc (normal_distribution<>::operator()): Minor
+       tweaks.
+
+2006-08-18  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/28765
+       * include/ext/rc_string_base.h (_M_clear): New.
+       * include/ext/sso_string_base.h (_M_clear): Likewise.
+       * include/ext/vstring.h (clear): Use it.
+
+2006-08-15  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (poisson_distribution<>::_M_initialize): Add.
+       (poisson_distribution<>::poisson_distribution(const _RealType&):
+       Use it.
+       (operator>>(std::basic_istream<>&, poisson_distribution<>&)):
+       Likewise.
+       (poisson_distribution<>::_M_large): Remove.
+       * include/tr1/random.tcc (poisson_distribution<>::_M_initialize):
+       Define.
+       (operator<<(std::basic_ostream<>&, const poisson_distribution<>&)):
+       Do not output the constants.
+
+       * include/tr1/random (operator>>(std::basic_istream<>&,
+       gamma_distribution&)): Minor tweak.
+       
+       * include/tr1/random.tcc (poisson_distribution<>::operator()):
+       Minor tweak.
+
+       * include/tr1/random: Consistently, all data members private.
+
+2006-08-15  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random.tcc (mersenne_twister<>::operator()): Revert
+       last change (per gcc-patches/2006-08/msg00484.html).
+
+2006-08-14  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (class poisson_distribution<>): Add.
+       * include/tr1/random.tcc (poisson_distribution<>::operator(),
+       operator<<(std::basic_ostream<>&, const poisson_distribution<>&),
+       operator>>(std::basic_istream<>&, poisson_distribution<>&,
+       poisson_distribution<>::poisson_distribution(const _RealType&)):
+       Define.
+       * testsuite/tr1/5_numerical_facilities/random/poisson_distribution/
+       requirements/typedefs.cc: New.
+
+       * include/tr1/random.tcc (mersenne_twister<>::operator()): Tweak
+       a bit for efficiency.
+       
+       * include/tr1/random.tcc (operator<<(std::basic_ostream<>&,
+       const normal_distribution<>&), operator>>(std::basic_istream<>&,
+       normal_distribution<>&)): Do not output _M_saved unnecessarily.
+
+       * include/tr1/random: Trivial formatting fixes.
+       * include/tr1/cmath: Likewise.
+
+2006-08-11  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_bvector.h (__fill_bvector(_Bit_iterator,
+       _Bit_iterator, bool)): New.
+       (fill(_Bit_iterator, _Bit_iterator, const bool&)): Use it.
+
+2006-08-10  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random.tcc (gamma_distribution<>::operator()): Fixes
+       from the Errata of Devroye's book.
+
+2006-08-10  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_bvector.h (_Bit_iterator_base::_M_incr(ptrdiff_t)):
+       Tidy a bit, thus reducing generated code size.
+
+2006-08-09  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_bvector.h (vector<bool>::_M_copy_aligned): New.
+       (vector<bool>::vector(const vector&), operator=(const vector&),
+       reserve(size_type), _M_fill_insert(iterator, size_type, bool),
+       _M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
+       std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
+       * testsuite/performance/23_containers/copy_construct/
+       vector_bool.cc: New.
+
+       * testsuite/23_containers/vector/bool/cons/1.cc: New.
+       * testsuite/23_containers/vector/bool/cons/2.cc: Likewise.
+
+       * include/bits/stl_bvector.h (vector<bool>::_M_fill): Remove.
+       (fill(_Bit_iterator, _Bit_iterator, const bool&)): New.
+       (vector<bool>::_M_fill_insert(iterator, size_type, bool)): Adjust.
+
+       * include/bits/stl_bvector.h (_M_initialize_range(_InputIterator,
+       _InputIterator, std::input_iterator_tag)): Remove redundant
+       assignments.
+
+       * include/bits/stl_algo.h (find(istreambuf_iterator<>,
+       istreambuf_iterator<>, _CharT)): Adjust signature.
+       * include/bits/streambuf_iterator.h: Likewise.
+       * include/std/std_streambuf.h: Likewise.        
+
+2006-08-09  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
+       const _Deque_iterator<>&, const _Tp&)): Move...
+       * include/bits/deque.tcc: ... here.
+       * include/bits/stl_deque.h: Declare.
+
+2006-08-06  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/16611
+       * include/bits/stl_bvector.h (vector<bool>::operator[],
+       vector<bool>::operator[] const): Do not use iterator::operator+,
+       hand code.
+
+2006-08-05  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/28587
+       * include/bits/stl_bvector.h (vector<bool>::_M_fill): New.
+       (vector<bool>::_M_fill_insert): Use it.
+       * testsuite/performance/23_containers/resize/vector_bool.cc: New.
+       
+       * testsuite/23_containers/vector/bool/modifiers/insert/1.cc: New.
+       * testsuite/23_containers/vector/bool/capacity/1.cc: Likewise.
+
+2006-08-04  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_queue.h (priority_queue<>::push,
+       priority_queue<>::pop): Remove try/catch, just follow the
+       letter of the Standard.
+
+2006-08-03  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_queue.h: Trivial formatting fixes.
+       * include/bits/stl_stack.h: Likewise.
+
+2006-08-01  Ed Smith-Rowland  <3dw4rd@verizon.net>
+
+       * docs/html/ext/tr1.html: Update.
+
+2006-07-31  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
+       Find the decimal point in cs, instead of ws; tidy.
+
+2006-07-30  Roger Sayle  <roger@eyesopen.com>
+
+       * include/ext/codevt_specializations.h (__iconv_adaptor): Use
+       identifier _Tp instead of _T in template argument to avoid conflict.
+
+2006-07-30  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_algo.h (stable_sort): Uglify the buf variable.
+       * include/bits/stl_tempbuf.h (_Temporary_buffer<>::
+       _M_initialize_buffer): Uglify the val parameter.
+
+2006-07-27  Benjamin Kosnik  <bkoz@wells.artheist.org>
+
+       PR libstdc++/19664 round 3      
+       * include/Makefile.am (tr1_headers): Add hashtable_policy.h.
+       * include/Makefile.in: Regenerate.
+       * include/tr1/hashtable: Move policy classes into...
+       * include/tr1/hashtable_policy.h: ... this. New.
+       
+       * src/globals_locale.cc: Move contents....
+       * src/locale_init.cc: ... to here, put in anonymous namespace.
+       * src/Makefile.am: Remove globals_locale.cc.
+       * src/Makefile.in: Regenerate.
+
+       * src/locale.cc: Convert __gnu_internal to anonymous namespace.
+       * src/debug.cc: Same.
+       * src/ext-inst.cc: Same.
+       * src/mt_allocator.cc: Same.
+       * src/pool_allocator.cc: Same.
+       
+       * include/tr1/random: Convert std::tr1::_Private to anonymous
+       namespace.
+       * include/tr1/random.tcc: Same.
+
+       * include/tr1/hashtable: Move ::Internal to std::tr1::detail and
+       enclose bits that can actually be internal in in anonymous
+       namespace.
+       * include/tr1/unordered_set: Adjust explicit qualifications for
+       namespace changes.
+       * include/tr1/unordered_map: Same.
+
+       * include/tr1/cmath: Convert __gnu_internal to nested detail namespace.
+
+       * include/bits/cpp_type_traits.h: Move __type_type into anonymous
+       namespace.
+       
+       * include/ext/rope: Change _Rope_constants to anonymous namespace.
+       * include/ext/ropeimpl.h: Same.
+       * src/ext-inst.cc: Same.
+
+2006-07-24  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/cinttypes: Simply protect everything with
+       _GLIBCXX_USE_C99_INTTYPES_TR1.
+       * include/tr1/cfenv: Likewise with _GLIBCXX_USE_C99_FENV_TR1.
+       * include/tr1/cstdint: Likewise with _GLIBCXX_USE_C99_STDINT_TR1.
+
+2006-07-21  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/tr1/random: Make include guards consistent.
+       * include/tr1/unordered_map: Same.
+       * include/tr1/hashtable: Same.
+       * include/tr1/unordered_set: Same.
+
+2006-07-21  Steve Ellcey  <sje@cup.hp.com>
+
+       PR target/26792
+       * configure.ac: Use GCC_CHECK_UNWIND_GETIPINFO to
+       define HAVE_GETIPINFO.
+       * aclocal.m4: Add include of ../config/unwind_ipinfo.m4.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * Makefile.in: Regenerate.
+       * libmath/Makefile.in: Regenerate.
+       * include/Makefile.in: Regenerate.
+       * src/Makefile.in: Regenerate.
+       * libsupc++/Makefile.in: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+       * po/Makefile.in: Regenerate.
+       * libsupc++/eh_personality.cc: Check HAVE_GETIPINFO.
+
+2006-07-21  Jason Merrill  <jason@redhat.com>
+
+       PR libstdc++/19664 round 2      
+       * libsupc++/eh_personality.cc: Wrap extern "C" function
+       definitions in namespace __cxxabiv1.
+
+2006-07-21  David Daney  <ddaney@avtrex.com>
+
+       PR libgcj/28426
+       * acinclude.m4: Added a comment.
+
+2006-07-20  Benjamin Kosnik  <bkoz@redhat.com>
+           Jakub Jelinek  <jakub@redhat.com>
+       
+       PR libstdc++/19664 round 1
+       * acinclude.m4 (GLIBCXX_ENABLE_VISIBILITY): Check it.
+       * configure.ac: Use it.
+       * configure: Regenerate.
+       * docs/html/configopts.html: Document it.
+       * include/Makefile.am: Slip in to c++config.
+       * include/Makefile.in: Regenerate.
+       * include/bits/c++config (_GLIBCXX_VISIBILITY): New.
+       (_GLIBCXX_BEGIN_NAMESPACE): Use it.
+       (_GLIBCXX_END_NAMESPACE): Use it.
+       (_GLIBCXX_BEGIN_NESTED_NAMESPACE): Use it.
+       (_GLIBCXX_END_NESTED_NAMESPACE): Use it.                
+       * src/debug.cc: Mark __gnu_internal namespace with hidden
+       visibility attribute.
+       * src/ext-inst.cc: Same.
+       * src/globals_io.cc: Same.
+       * src/globals_locale.cc: Same.
+       * src/ios_init.cc: Same.
+       * src/locale.cc: Same.
+       * src/mt_allocator.cc: Same.
+       * src/pool_allocator.cc: Same.
+
+2006-07-16  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/28277 (partial: valarray bits)
+       * include/std/std_valarray.h (valarray<>::shift(int),
+       valarray<>::cshift(int)): Avoid __builtin_alloca with no limit,
+       do the work in place.
+       * testsuite/26_numerics/valarray/28277.cc: New.
+
+2006-07-15  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/28277 (partial: ostream bits 1)
+       * include/bits/ostream.tcc (operator<<(basic_ostream<_CharT>&,
+       const char*)): Avoid __builtin_alloca with no limit in the
+       widening.
+       * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
+       28277-1.cc: New.
+
+2006-07-14  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): New.
+       * configure.ac: Use it.
+       * configure: Regenerated.
+       * config.h.in: Regenerated.
+       * configure.host: Simplify.
+       * include/bits/atomicity.h: Adjust macros.
+       * config/cpu/generic/atomicity.h: Move...
+       * config/cpu/generic/atomicity_mutex: New.
+       * config/cpu/generic/atomicity_mutex/atomicity.h: ...here.
+       * config/cpu/generic/atomic_builtins: Rename...
+       * config/cpu/generic/atomicity_builtins: ...to this.
+       * config/cpu/generic/atomicity_builtins/atomicity.h: Moved.
+       * config/cpu/mips/atomicity.h: Comment MIPS II requirement.
+
+       * scripts/testsuite_flags.in: Make --cxxflags reflect CXXFLAGS.
+       
+2006-07-14  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (minstd_rand0, minstd_rand, ranlux3, ranlux4):
+       Use unsigned long as implementation-defined type.
+
+2006-07-14  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random.tcc (struct _To_Unsigned_Type): Add.
+       (subtract_with_carry<>::seed(_Gen&, false_type)): Use an
+       unsigned type in the loop, fix factor multiplier, take g
+       invocations modulo 2^32.
+
+       * include/tr1/random.tcc (subtract_with_carry<>::
+       seed(unsigned long)): Fix value == 0 special case.
+
+       * include/tr1/random (struct _Shift): Fix for large shifts.
+
+2006-07-13  Paolo Carlini  <pcarlini@suse.de>
+
+       * testsuite/performance/21_strings/string_copy_cons_and_dest.cc: New.
+
+2006-07-13  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/Makefile.am (pch*_output_anchor): Add.
+       (pch*_output): Use.
+       (CLEANFILES): Use.
+       * include/Makefile.in: Regenerate.
+       
+       * scripts/check_performance: Be verbose on compile error.
+
 2006-07-12  Benjamin Kosnik  <bkoz@redhat.com>
 
        * include/Makefile.am: Revert last change.
        
 2006-04-26  Shantonu Sen  <ssen@opendarwin.org>
 
-         PR libstdc++/26513
-         * scripts/make_exports.pl: Use $ENV{NM_FOR_TARGET}, if present.
+       PR libstdc++/26513
+       * scripts/make_exports.pl: Use $ENV{NM_FOR_TARGET}, if present.
 
 2006-04-23  Marc Glisse  <marc.glisse@normalesup.org>