2013-02-04 François Dumont <fdumont@gcc.gnu.org>
[official-gcc.git] / libstdc++-v3 / ChangeLog
blobdc96107a1f9bd5896305a7bfaae2dfa7895e5201
1 2013-02-04  François Dumont  <fdumont@gcc.gnu.org>
3         * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
4         * include/bits/basic_string.h: Specialize previous to mark
5         std::hash for string types as slow.
6         * include/bits/hashtable.h (__cache_default): Replace is_integral
7         with __is_fast_hash.
8         * src/c++11/hash_c++0x.cc: Add type_traits include.
9         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
10         Adapt dg-error line number.
11         * testsuite/23_containers/unordered_set/
12         not_default_constructible_hash_neg.cc: Likewise.
14 2013-02-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
15             Paolo Carlini  <paolo.carlini@oracle.com>
17         PR libstdc++/56202 (again)
18         * include/bits/random.tcc (binomial_distribution<>::
19         _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
20         in previous commit.
22         * include/bits/random.h: Fix comment typo.
24 2013-02-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
25             Paolo Carlini  <paolo.carlini@oracle.com>
27         PR libstdc++/56202
28         * include/bits/random.tcc (binomial_distribution<>::
29         _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
30         division by zero.
32 2013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
34         Update copyright years.
35         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
36         testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
37         testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
38         testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
39         testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
40         testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
41         testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
42         testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
43         testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
44         testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
45         testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
46         testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
47         testsuite/29_atomics/atomic/cons/assign_neg.cc,
48         testsuite/29_atomics/atomic/cons/copy_neg.cc,
49         testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
50         testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
51         testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
52         testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
53         testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
54         Update lines in dg error matches.
56 2013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
58         * config/os/mingw32/ctype_inline.h: Fix copyright typo.
60 2013-02-01  François Dumont  <fdumont@gcc.gnu.org>
62         * include/bits/hashtable_policy.h
63         (_Prime_rehash_policy::_M_next_bkt)
64         (_Prime_rehash_policy::_M_need_rehash): Move definition...
65         * src/c++11/hashtable_c++0x.cc: ... here.
66         * src/shared/hashtable-aux.cc: Remove c++config.h include.
67         * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
68         symbols.
70 2013-01-29  Jason Merrill  <jason@redhat.com>
72         PR libstdc++/54314
73         * config/abi/pre/gnu.ver: Don't export construction vtables.
74         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
76 2013-01-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
78         PR libstdc++/56112
79         * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
80         to construct value_type explicitly before trying to extract the key.
81         * testsuite/23_containers/unordered_map/cons/56112.cc: New.
83 2013-01-28  François Dumont  <fdumont@gcc.gnu.org>
85         * include/bits/hashtable_policy.h (_Local_iterator_base): Use
86         _Hashtable_ebo_helper to embed functors into the local_iterator
87         when necessary. Pass information about functors involved in hash
88         code by copy.
89         * include/bits/hashtable.h (__cache_default): Do not cache for
90         builtin integral types unless the hash functor is not noexcept
91         qualified or is not default constructible. Adapt static assertions
92         and local iterator instantiations.
93         * include/debug/unordered_set
94         (std::__debug::unordered_set<>::erase): Detect local iterators to
95         invalidate using contained node rather than generating a dummy
96         local_iterator instance.
97         (std::__debug::unordered_multiset<>::erase): Likewise.
98         * include/debug/unordered_map
99         (std::__debug::unordered_map<>::erase): Likewise.
100         (std::__debug::unordered_multimap<>::erase): Likewise.
101         * testsuite/performance/23_containers/insert_erase/41975.cc: Test
102         std::tr1 and std versions of unordered_set regardless of any
103         macro. Add test on default cache behavior.
104         * testsuite/performance/23_containers/insert/54075.cc: Likewise.
105         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
106         Adapt line number.
107         * testsuite/23_containers/unordered_set/
108         not_default_constructible_hash_neg.cc: New.
109         * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
111 2013-01-24  Paolo Carlini  <paolo.carlini@oracle.com>
113         PR libstdc++/56085
114         * include/std/complex (pow(const complex<>&, int)): Avoid __n
115         signed overflow.
117 2013-01-22  Jakub Jelinek  <jakub@redhat.com>
119         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
120         Tightten scan-assembler-times regexps, add dg-additional-options for
121         ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
122         dg-options.
124 2013-01-12  Andi Kleen  <ak@linux.intel.com>
125             Jonathan Wakely  <jwakely.gcc@gmail.com>
127         PR libstdc++/55233
128         * include/bits/atomic_base.h (__memory_order_modifier): Add
129         __memory_order_mask, __memory_order_modifier_mask,
130         __memory_order_hle_acquire, __memory_order_hle_release.
131         (operator|,operator&): Add.
132         (__cmpexch_failure_order):  Rename to __cmpexch_failure_order2.
133         (__cmpexch_failure_order): Add.
134         (clear, store, load, compare_exchange_weak, compare_exchange_strong):
135         Handle flags.
136         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
137         Add.
139 2013-01-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
141         PR libstdc++/55861
142         * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
143         Fix return type.
144         (__basic_future::_M_get_result()): Const qualify.
145         (shared_future::get()): Likewise.
146         * testsuite/30_threads/shared_future/members/get.cc: Use const
147         objects.
149 2013-01-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
151         PR libstdc++/55043 (again)
152         * include/bits/alloc_traits.h (allocator_traits::construct): Disable
153         unless construction would be well-formed.
154         (__allow_copy_cons, __check_copy_constructible): Define.
155         * include/bits/unordered_map.h (__check_copy_constructible): Use as
156         base class so copy constructor will be deleted if appropriate.
157         (is_copy_constructible): Remove specialization.
158         * include/bits/unordered_set.h: Likewise.
159         * include/debug/unordered_map.h: Undo previous commit. Default copy
160         and move constructors.
161         * include/debug/unordered_set.h: Likewise.
162         * include/profile/unordered_map.h: Undo previous commit.
163         * include/profile/unordered_set.h: Likewise.
164         * testsuite/23_containers/unordered_map/55043.cc: Fix test.
165         * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
166         * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
167         * testsuite/23_containers/unordered_set/55043.cc: Likewise.
168         * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
169         cannot support incomplete types.
170         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
171         Likewise.
173 2013-01-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
175         PR libstdc++/55043
176         * include/std/unordered_map: Include alloc_traits.h
177         * include/std/unordered_set: Likewise.
178         * include/bits/alloc_traits.h: Define __is_copy_insertable.
179         * include/bits/unordered_map.h: Use it.
180         * include/bits/unordered_set.h: Likewise.
181         * include/debug/unordered_map.h: Likewise.
182         * include/debug/unordered_set.h: Likewise.
183         * include/profile/unordered_map.h: Likewise.
184         * include/profile/unordered_set.h: Likewise.
185         * include/bits/hashtable.h: Fix comment typos.
186         * testsuite/23_containers/unordered_map/55043.cc: New.
187         * testsuite/23_containers/unordered_multimap/55043.cc: New.
188         * testsuite/23_containers/unordered_multiset/55043.cc: New.
189         * testsuite/23_containers/unordered_set/55043.cc: New.
191 2013-01-03  Janis Johnson  <janisjo@codesourcery.com>
193         * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
194         gdb command.
196 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
198         * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
200 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
202         PR libstdc++/55908
203         * include/std/functional (_Mem_fn::operator()): Fix constraints to
204         avoid ambiguity.
205         * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
206         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
208 2013-01-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
210         PR libstdc++/55594
211         * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
212         Solaris targets.
213         * configure: Regenerate.
215 2013-01-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
217         PR libstdc++/55847
218         * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
219         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
220         string.
222         PR libstdc++/55728
223         * include/std/functional (bad_function_call::what()): Declare.
224         * src/c++11/functional.cc (bad_function_call::what()): Define.
225         * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
226         * testsuite/20_util/bad_function_call/what.cc: New.
228 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
230         * include/bits/unordered_map.h: Fix typo in comments.
231         * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
232         counts for unordered associative containers.
234 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
236         * doc/xml/manual/abi.xml: Update library and symbol versions.
238 2013-01-06  Richard Sandiford  <rdsandiford@googlemail.com>
240         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
241         in copyright years.
242         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
245 Copyright (C) 2013 Free Software Foundation, Inc.
247 Copying and distribution of this file, with or without modification,
248 are permitted in any medium without royalty provided the copyright
249 notice and this notice are preserved.