Revert revision 178346 (2011-08-30)
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob4c2c6d9c5f44b860a14953618afcce561c7186a7
1 2013-03-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
3         PR libstdc++/56170
4         * include/ext/debug_allocator.h (debug_allocator): Add missing members
5         to meet allocator requirements.
6         * testsuite/ext/debug_allocator/56170.cc: New.
8 2013-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
10         PR libstdc++/56678
11         * include/std/chrono (__is_ratio): Uglify T.
13 2013-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
15         PR libstdc++/55977 (partial, std::vector and std::deque bits)
16         * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
17         _InputIterator, std::input_iterator_tag)): Use emplace_back.
18         * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
19         _InputIterator, std::input_iterator_tag)): Likewise.
20         * testsuite/23_containers/vector/cons/55977.cc: New.
21         * testsuite/23_containers/deque/cons/55977.cc: Likewise.
22         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
23         Adjust dg-error line number.
24         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
25         Likewise.
27 2013-03-17  Paolo Carlini  <paolo.carlini@oracle.com>
29         PR libstdc++/55979
30         * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
31         _InputIterator, __false_type)): Use emplace_back.
32         * testsuite/23_containers/list/cons/55979.cc: New.
33         * testsuite/23_containers/list/modifiers/1.h: Adjust.
34         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
35         Adjust dg-error line number.
37 2013-03-16  Jason Merrill  <jason@redhat.com>
39         PR c++/55017
40         * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
42 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
44         PR libstdc++/56468
45         * libsupc++/exception_ptr.h (type_info): Declare.
47 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
49         PR libstdc++/56002
50         * include/std/mutex (lock_guard, unique_lock, lock): Define without
51         depending on _GLIBCXX_HAS_GTHREADS.
52         * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
54 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
56         PR libstdc++/56492
57         * include/std/future (__future_base::_Result): Add result_type
58         typedef.
59         (__future_base::_S_allocate_result): Overload for std::allocator.
60         (__future_base::_Task_setter): Use _Result::result_type instead of
61         deducing the type from the task.
62         (__future_base::_Task_state): Store allocator to allow shared state
63         to be reset.  Replace std::function with member of target object type
64         accessed via ...
65         (__future_base::_Task_state_base): New abstract base class.
66         (__future_base::_Task_state_base::_M_run): New virtual function to
67         invoke type-erased target object.
68         (__future_base::_Task_state_base::_M_reset): New virtual function to
69         create new shared_state using same target object and allocator.
70         (__future_base::__create_task_state): Allocate a new _Task_state.
71         (packaged_task::packaged_task): Use __create_task_state.
72         (packaged_task::reset): Use _Task_state_base::_M_reset.
73         * testsuite/30_threads/packaged_task/cons/56492.cc: New.
75 2013-03-15  Tom Tromey  <tromey@redhat.com>
77         * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
78         (PROBE2): New macro.
79         * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
80         * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
81         * configure.ac: Check for sys/sdt.h.
82         * configure, config.h.in: Rebuild.
84 2013-03-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
86         PR libstdc++/56613
87         * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
88         allocator_traits instead of calling construct directly.
89         * testsuite/23_containers/map/56613.cc: New.
91 2013-03-13  Benjamin Kosnik  <bkoz@redhat.com>
93         * doc/html/*: Regenerate.
95 2013-03-13  Paolo Carlini  <paolo.carlini@oracle.com>
97         PR libstdc++/56609
98         * include/std/type_traits (is_fundamental): Add std::nullptr_t.
99         * testsuite/20_util/is_fundamental/value.cc: Extend.
100         * testsuite/20_util/is_compound/value.cc: Likewise.
102 2013-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
104         * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
105         -Wunused warnings.
107 2013-03-08  Benjamin Kosnik  <bkoz@redhat.com>
109         * include/bits/memoryfwd.h: New. Centralize forward declarations.
110         * include/bits/algorithmfwd.h: Consistent comments.
111         * include/bits/localefwd.h: Same.
112         * include/ext/vstring_fwd.h: Same.
113         * include/parallel/algorithmfwd.h: Same.
114         * include/parallel/numericfwd.h: Same.
115         * include/std/iosfwd: Same.
117         * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
118         forward decl.
119         * include/ext/alloc_traits.h: Remove allocator forward decl.
120         * include/bits/stl_construct.h: Same.
121         * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
122         forward decl. Consistent comments.
124         * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
126         * include/Makefile.am (bits_headers): Add memoryfwd.h.
127         * include/Makefile.in: Regenerate.
128         * configure: Same.
130 2013-03-08  François Dumont  <fdumont@gcc.gnu.org>
132         * include/bits/vector.tcc (vector<>operator=(const vector<>&):
133         Reset pointers after deallocation when memory can be reused.
134         * testsuite/23_containers/vector/allocator/minimal.cc: Insert
135         elements to really challenge C++11 allocator integration.
136         * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
137         * testsuite/23_containers/vector/allocator/copy_assign.cc:
138         Likewise.
139         * testsuite/23_containers/vector/allocator/move_assign.cc:
140         Likewise.
141         * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
142         swap vector back before checks on memory/personality mapping are
143         performed.
144         * testsuite/23_containers/forward_list/allocator/minimal.cc:
145         Insert element to really challenge C++11 allocator integration.
146         * testsuite/23_containers/forward_list/allocator/copy.cc:
147         Likewise.
148         * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
149         Likewise.
150         * testsuite/23_containers/forward_list/allocator/move_assign.cc:
151         Likewise.
152         * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
153         and swap forward_list back before checks on memory/personality
154         mapping are performed.
156 2013-03-07  Jakub Jelinek  <jakub@redhat.com>
158         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
159         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
160         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
161         Likewise.
162         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
163         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
164         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
165         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
166         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
167         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
169 2013-03-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
171         * scripts/extract_symvers.pl: Omit symbols bound to base
172         versions.
173         * scripts/extract_symvers.in: Likewise.
174         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
175         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
176         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
177         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
178         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
180 2013-03-04  Ulrich Drepper  <drepper@gmail.com>
182         * include/ext/random (__gnu_cxx::von_mises_distribution<>):
183         Optimize generation function by pulling computation of __r into the
184         constructor for param_type.  Also compare _M_mu in operator==.
185         Fix comment.
187 2013-03-02  Ulrich Drepper  <drepper@gmail.com>
189         Add triangular and von Mises distributions.
190         * include/ext/random: Include <ext/cmath>.
191         Add __gnu_cxx::triangular_distribution<> and
192         __gnu_cxx::von_mises_distribution<> classes.
193         * include/ext/random.tcc: Add out-of-line functions for
194         __gnu_cxx::triangular_distribution<> and
195         __gnu_cxx::von_mises_distribution<>.
196         * testsuite/ext/triangular_distribution/cons/default.cc: New file.
197         * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
198         * testsuite/ext/triangular_distribution/operators/serialize.cc:
199         New file.
200         * testsuite/ext/triangular_distribution/operators/equal.cc:
201         New file.
202         * testsuite/ext/triangular_distribution/operators/inequal.cc:
203         New file.
204         * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
205         New file.
206         * testsuite/ext/triangular_distribution/requirements/
207         explicit_instantiation/1.cc: New file.
208         * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
209         * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
210         * testsuite/ext/von_mises_distribution/operators/serialize.cc:
211         New file.
212         * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
213         * testsuite/ext/von_mises_distribution/operators/inequal.cc:
214         New file.
215         * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
216         New file.
217         * testsuite/ext/von_mises_distribution/requirements/
218         explicit_instantiation/1.cc: New file.
220         Add math constants.
221         * include/Makefile.am (ext_headers): Add cmath.
222         * include/Makefile.in: Regenerated.
223         * include/ext/cmath: New file.
225 2013-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
227         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
228         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
229         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
230         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
231         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
233 2013-02-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
235         PR libstdc++/56012
236         * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
237         * testsuite/29_atomics/atomic/operators/56012.cc: New.
239         PR libstdc++/56011
240         * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
241         missing overload.
242         * testsuite/29_atomics/atomic/operators/56011.cc: New.
244 2013-02-25  Jason Merrill  <jason@redhat.com>
246         * configure.ac: Check for __cxa_thread_atexit_impl.
247         * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
248         to it if available.
249         * config.h.in, configure: Regenerate.
251 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
253         * include/std/streambuf (basic_streambuf): Use injected class name
254         instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
255         group.
257 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
259         * doc/html/faq.html: Fix spelling.
260         * doc/xml/faq.xml: Likewise.
261         * include/bits/basic_ios.h: Likewise.
262         * include/bits/regex.h: Likewise.
263         * include/std/istream: Likewise.
264         * include/std/streambuf: Likewise.
266 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
268         * testsuite/23_containers/unordered_set/55043.cc: Add missing
269         namespace qualification.
270         * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
272 2013-02-19  Benjamin Kosnik  <bkoz@redhat.com>
274         * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
275         _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
276         AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
277         * include/bits/stl_pair.h: Add to utilities group.
278         * include/std/tuple: Same.
279         * include/std/typeindex: Same.
281         * include/bits/stringfwd.h: Fix markup.
282         * include/std/limits: Same.
283         * include/std/type_traits: Same.
284         * include/tr1/memory: Same.
285         * include/tr1/regex: Same.
286         * scripts/run_doxygen: Comment.
287         * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
289 2013-02-14  Jason Merrill  <jason@redhat.com>
291         * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
292         test if unsupported.
294 2013-02-13  Marc Glisse  <marc.glisse@inria.fr>
296         PR libstdc++/56111
297         * include/std/complex (complex): Undefine.
298         * include/c_compatibility/complex.h (complex): Only undefine if
299         <complex> has been included.
300         * testsuite/26_numerics/complex/56111.cc: New testcase.
302 2013-02-13  François Dumont  <fdumont@gcc.gnu.org>
304         * include/bits/hashtable_policy.h (_Hash_code_base): Restore
305         default constructor protected.
306         * include/bits/hashtable.h: static assert that _Hash_code_base has
307         a default constructor available through inheritance.
309 2013-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
311         * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
312         C++11 mode.
314 2013-02-12  Julian Brown  <julian@codesourcery.com>
316         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
317         Don't expect dots after abbreviated weekday names for ru_RU for
318         glibc versions >= 2.17.
319         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
320         Likewise.
322 2013-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
324         * include/bits/random.tcc (__transform): Remove.
325         (__normalize): Add.
326         (discrete_distribution<>::param_type::_M_initialize): Adjust.
327         (piecewise_constant_distribution<>::param_type::_M_initialize):
328         Likewise.
329         (piecewise_linear_distribution<>::param_type::_M_initialize):
330         Likewise.
332 2013-02-11  Benjamin Kosnik  <bkoz@redhat.com>
334         * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
335         Use -fimplicit-templates.
336         * src/c++11/Makefile.in: Regenerate.
337         * src/c++11/hashtable_c++0x.cc: Remove instantiation for
338         std::lower_bound template.
340 2013-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
342         * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
343         * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
344         in C++11 mode and if available in the underlying C library.
345         * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
346         -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
347         _GLIBCXX_HAVE_QUICK_EXIT.
349 2013-02-11  Benjamin Kosnik  <bkoz@redhat.com>
351         * doc/html/*: Regenerate.
353 2013-02-11  Jason Merrill  <jason@redhat.com>
355         * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
356         (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
357         * config.h.in, configure: Regenerate.
358         * include/c_std/cstdlib: Add atexit and at_quick_exit.
359         * include/c_global/cstdlib: Add atexit and at_quick_exit.
360         * testsuite/18_support/quick_exit/quick_exit.cc: New.
362 2013-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
364         PR libstdc++/56282
365         Revert:
366         2013-02-06  Edward Smith-Rowland  <3dw4rd@verizon.net>
368         PR libstdc++/56193
369         * include/bits/basic_ios.h: Replace operator void*() const
370         with explicit operator bool() const in C++11 and greater.
371         * testsuite/27_io/basic_ios/pr56193.cc: New file.
373 2013-02-10  François Dumont  <fdumont@gcc.gnu.org>
374             Jonathan Wakely  <jwakely.gcc@gmail.com>
376         * doc/xml/manual/containers.xml: Add section on unordered containers.
377         * doc/xml/manual/using.xml: Fix incomplete sentence.
379 2013-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
381         PR libstdc++/56267
382         * include/bits/hashtable.h (__cache_default): Check if hash function
383         is copy assignable.
384         * testsuite/23_containers/unordered_set/56267.cc: New.
385         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
386         dg-error line number.
387         * testsuite/23_containers/unordered_set/
388         not_default_constructible_hash_neg.cc: Likewise.
390         PR libstdc++/56278
391         * include/bits/hashtable_policy.h (_Hash_code_base): Make default
392         constructor public.
393         * testsuite/23_containers/unordered_set/56278.cc: New.
395 2013-02-09  François Dumont  <fdumont@gcc.gnu.org>
397         * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
398         simplification.
400 2013-02-08  Edward Smith-Rowland  <3dw4rd@verizon.net>
402         PR libstdc++/56216
403         * include/tr1/special_function_util.h: Remove spurious const
404         from numeric arguments.
405         * include/tr1/riemann_zeta.tcc: Likewise.
406         * include/tr1/exp_integral.tcc: Likewise.
407         * include/tr1/bessel_function.tcc: Likewise.
408         * include/tr1/hypergeometric.tcc: Likewise.
409         * include/tr1/modified_bessel_func.tcc: Likewise.
410         * include/tr1/poly_laguerre.tcc: Likewise.
411         * include/tr1/gamma.tcc: Likewise.
412         * include/tr1/legendre_function.tcc: Likewise.
413         * include/tr1/poly_hermite.tcc: Likewise.
414         * include/tr1/ell_integral.tcc: Likewise.
415         * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
416         If argument is zero return function value.
417         * testsuite/tr1/5_numerical_facilities/special_functions/
418         08_cyl_bessel_i/pr56216.cc: New.
420 2013-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
422         * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
424 2013-02-06  Edward Smith-Rowland  <3dw4rd@verizon.net>
426         PR libstdc++/56193
427         * include/bits/basic_ios.h: Replace operator void*() const
428         with explicit operator bool() const in C++11 and greater.
429         * testsuite/27_io/basic_ios/pr56193.cc: New file.
431 2013-02-04  Dodji Seketeli  <dodji@redhat.com>
433         Add missing explicit instantiation for std::lower_bound template
434         * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
435         missing instantiation for std::lower_bound template.
437 2013-02-04  François Dumont  <fdumont@gcc.gnu.org>
439         * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
440         * include/bits/basic_string.h: Specialize previous to mark
441         std::hash for string types as slow.
442         * include/bits/hashtable.h (__cache_default): Replace is_integral
443         with __is_fast_hash.
444         * src/c++11/hash_c++0x.cc: Add type_traits include.
445         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
446         Adapt dg-error line number.
447         * testsuite/23_containers/unordered_set/
448         not_default_constructible_hash_neg.cc: Likewise.
450 2013-02-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
451             Paolo Carlini  <paolo.carlini@oracle.com>
453         PR libstdc++/56202 (again)
454         * include/bits/random.tcc (binomial_distribution<>::
455         _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
456         in previous commit.
458         * include/bits/random.h: Fix comment typo.
460 2013-02-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
461             Paolo Carlini  <paolo.carlini@oracle.com>
463         PR libstdc++/56202
464         * include/bits/random.tcc (binomial_distribution<>::
465         _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
466         division by zero.
468 2013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
470         Update copyright years.
471         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
472         testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
473         testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
474         testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
475         testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
476         testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
477         testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
478         testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
479         testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
480         testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
481         testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
482         testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
483         testsuite/29_atomics/atomic/cons/assign_neg.cc,
484         testsuite/29_atomics/atomic/cons/copy_neg.cc,
485         testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
486         testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
487         testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
488         testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
489         testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
490         Update lines in dg error matches.
492 2013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
494         * config/os/mingw32/ctype_inline.h: Fix copyright typo.
496 2013-02-01  François Dumont  <fdumont@gcc.gnu.org>
498         * include/bits/hashtable_policy.h
499         (_Prime_rehash_policy::_M_next_bkt)
500         (_Prime_rehash_policy::_M_need_rehash): Move definition...
501         * src/c++11/hashtable_c++0x.cc: ... here.
502         * src/shared/hashtable-aux.cc: Remove c++config.h include.
503         * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
504         symbols.
506 2013-01-29  Jason Merrill  <jason@redhat.com>
508         PR libstdc++/54314
509         * config/abi/pre/gnu.ver: Don't export construction vtables.
510         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
512 2013-01-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
514         PR libstdc++/56112
515         * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
516         to construct value_type explicitly before trying to extract the key.
517         * testsuite/23_containers/unordered_map/cons/56112.cc: New.
519 2013-01-28  François Dumont  <fdumont@gcc.gnu.org>
521         * include/bits/hashtable_policy.h (_Local_iterator_base): Use
522         _Hashtable_ebo_helper to embed functors into the local_iterator
523         when necessary. Pass information about functors involved in hash
524         code by copy.
525         * include/bits/hashtable.h (__cache_default): Do not cache for
526         builtin integral types unless the hash functor is not noexcept
527         qualified or is not default constructible. Adapt static assertions
528         and local iterator instantiations.
529         * include/debug/unordered_set
530         (std::__debug::unordered_set<>::erase): Detect local iterators to
531         invalidate using contained node rather than generating a dummy
532         local_iterator instance.
533         (std::__debug::unordered_multiset<>::erase): Likewise.
534         * include/debug/unordered_map
535         (std::__debug::unordered_map<>::erase): Likewise.
536         (std::__debug::unordered_multimap<>::erase): Likewise.
537         * testsuite/performance/23_containers/insert_erase/41975.cc: Test
538         std::tr1 and std versions of unordered_set regardless of any
539         macro. Add test on default cache behavior.
540         * testsuite/performance/23_containers/insert/54075.cc: Likewise.
541         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
542         Adapt line number.
543         * testsuite/23_containers/unordered_set/
544         not_default_constructible_hash_neg.cc: New.
545         * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
547 2013-01-24  Paolo Carlini  <paolo.carlini@oracle.com>
549         PR libstdc++/56085
550         * include/std/complex (pow(const complex<>&, int)): Avoid __n
551         signed overflow.
553 2013-01-22  Jakub Jelinek  <jakub@redhat.com>
555         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
556         Tightten scan-assembler-times regexps, add dg-additional-options for
557         ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
558         dg-options.
560 2013-01-12  Andi Kleen  <ak@linux.intel.com>
561             Jonathan Wakely  <jwakely.gcc@gmail.com>
563         PR libstdc++/55233
564         * include/bits/atomic_base.h (__memory_order_modifier): Add
565         __memory_order_mask, __memory_order_modifier_mask,
566         __memory_order_hle_acquire, __memory_order_hle_release.
567         (operator|,operator&): Add.
568         (__cmpexch_failure_order):  Rename to __cmpexch_failure_order2.
569         (__cmpexch_failure_order): Add.
570         (clear, store, load, compare_exchange_weak, compare_exchange_strong):
571         Handle flags.
572         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
573         Add.
575 2013-01-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
577         PR libstdc++/55861
578         * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
579         Fix return type.
580         (__basic_future::_M_get_result()): Const qualify.
581         (shared_future::get()): Likewise.
582         * testsuite/30_threads/shared_future/members/get.cc: Use const
583         objects.
585 2013-01-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
587         PR libstdc++/55043 (again)
588         * include/bits/alloc_traits.h (allocator_traits::construct): Disable
589         unless construction would be well-formed.
590         (__allow_copy_cons, __check_copy_constructible): Define.
591         * include/bits/unordered_map.h (__check_copy_constructible): Use as
592         base class so copy constructor will be deleted if appropriate.
593         (is_copy_constructible): Remove specialization.
594         * include/bits/unordered_set.h: Likewise.
595         * include/debug/unordered_map.h: Undo previous commit. Default copy
596         and move constructors.
597         * include/debug/unordered_set.h: Likewise.
598         * include/profile/unordered_map.h: Undo previous commit.
599         * include/profile/unordered_set.h: Likewise.
600         * testsuite/23_containers/unordered_map/55043.cc: Fix test.
601         * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
602         * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
603         * testsuite/23_containers/unordered_set/55043.cc: Likewise.
604         * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
605         cannot support incomplete types.
606         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
607         Likewise.
609 2013-01-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
611         PR libstdc++/55043
612         * include/std/unordered_map: Include alloc_traits.h
613         * include/std/unordered_set: Likewise.
614         * include/bits/alloc_traits.h: Define __is_copy_insertable.
615         * include/bits/unordered_map.h: Use it.
616         * include/bits/unordered_set.h: Likewise.
617         * include/debug/unordered_map.h: Likewise.
618         * include/debug/unordered_set.h: Likewise.
619         * include/profile/unordered_map.h: Likewise.
620         * include/profile/unordered_set.h: Likewise.
621         * include/bits/hashtable.h: Fix comment typos.
622         * testsuite/23_containers/unordered_map/55043.cc: New.
623         * testsuite/23_containers/unordered_multimap/55043.cc: New.
624         * testsuite/23_containers/unordered_multiset/55043.cc: New.
625         * testsuite/23_containers/unordered_set/55043.cc: New.
627 2013-01-03  Janis Johnson  <janisjo@codesourcery.com>
629         * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
630         gdb command.
632 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
634         * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
636 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
638         PR libstdc++/55908
639         * include/std/functional (_Mem_fn::operator()): Fix constraints to
640         avoid ambiguity.
641         * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
642         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
644 2013-01-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
646         PR libstdc++/55594
647         * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
648         Solaris targets.
649         * configure: Regenerate.
651 2013-01-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
653         PR libstdc++/55847
654         * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
655         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
656         string.
658         PR libstdc++/55728
659         * include/std/functional (bad_function_call::what()): Declare.
660         * src/c++11/functional.cc (bad_function_call::what()): Define.
661         * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
662         * testsuite/20_util/bad_function_call/what.cc: New.
664 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
666         * include/bits/unordered_map.h: Fix typo in comments.
667         * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
668         counts for unordered associative containers.
670 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
672         * doc/xml/manual/abi.xml: Update library and symbol versions.
674 2013-01-06  Richard Sandiford  <rdsandiford@googlemail.com>
676         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
677         in copyright years.
678         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
681 Copyright (C) 2013 Free Software Foundation, Inc.
683 Copying and distribution of this file, with or without modification,
684 are permitted in any medium without royalty provided the copyright
685 notice and this notice are preserved.