PR target/51287
[official-gcc.git] / libstdc++-v3 / ChangeLog
blobaa324e0f3743dcf0523e748758ff54944e6e23b2
1 2011-11-23  François Dumont <fdumont@gcc.gnu.org>
3         PR libstdc++/41975
4         * include/bits/hashtable.h (_Hashtable<>): Major data model
5         modification to limit performance impact of empty buckets in
6         erase(iterator) implementation.
7         * include/bits/hashtable_policy.h (_Hashtable_iterator,
8         _Hashtable_const_iterator): Remove not used anymore.
9         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove
10         _M_grow_factor, just use natural evolution of prime numbers. Add
11         _M_prev_size to know when the number of buckets can be reduced.
12         * include/bits/unordered_set.h (__unordered_set<>,
13         __unordered_multiset<>), unordered_map.h (__unordered_map<>,
14         __unordered_multimap<>): Change default value of cache hash code
15         template parameter, false for integral types with noexcept hash
16         functor, true otherwise.
17         * include/debug/unordered_map, unordered_set: Adapt transformation
18         from iterator/const_iterator to respectively
19         local_iterator/const_local_iterator.
20         * testsuite/performance/23_containers/copy_construct/unordered_set.cc:
21         New.
22         * testsuite/23_containers/unordered_set/instantiation_neg.cc: New.
23         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: New.
24         * testsuite/23_containers/unordered_multiset/cons/copy.cc: New.
25         * testsuite/23_containers/unordered_multiset/erase/1.cc,
26         24061-multiset.cc: Add checks on the number of bucket elements.
27         * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc,
28         multiset_single.cc, multiset_single_move.cc: Likewise.
30 2011-11-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
32         * include/std/functional (is_placeholder, is_bind_expression): Add
33         partial specializations for cv-qualified types.
34         * include/tr1/functional (is_placeholder, is_bind_expression): Add
35         partial specializations for std::bind and std::placeholders and for
36         cv-qualified types.
37         * testsuite/20_util/bind/cv_quals_3.cc: New.
38         * testsuite/tr1/3_function_objects/bind/cv_quals.cc: New.
39         * testsuite/tr1/3_function_objects/bind/mixed.cc: New.
41 2011-11-21  Andreas Tobler  <andreast@fgznet.ch>
43         * configure: Regenerate.
45 2011-11-21  Daniel Krugler  <daniel.kruegler@googlemail.com>
47         PR libstdc++/51185
48         * include/std/type_traits (__is_base_to_derived_ref,
49         __is_lvalue_to_rvalue_ref): Fix.
50         * testsuite/20_util/is_constructible/51185.cc: New.
51         * testsuite/20_util/is_constructible/value-2.cc: Extend.
52         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
53         line number.
54         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
55         Likewise.
56         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc
57         Likewise.
59 2011-11-21  Paolo Carlini  <paolo.carlini@oracle.com>
61         * include/std/tuple (__conv_types, __one_by_one_convertible,
62         __all_convertible): Remove.
63         (tuple<>::tuple(_UElements&&...),
64         tuple<>::tuple(const tuple<_UElements...>&),
65         tuple<>::tuple(tuple<_UElements...>&&)): Remove wa for c++/48322.
66         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
67         line number.
69 2011-11-20  Jason Merrill  <jason@redhat.com>
71         PR c++/48322
72         * include/std/tuple (tuple(_UElements&&...)): Fix SFINAE.
74         * testsuite/20_util/bind/ref_neg.cc: Adjust error markings.
76 2011-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
78         * include/backward/binders.h: Fix examples in doxygen comments and
79         suggest using std::bind instead.
81 2011-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
83         * doc/xml/manual/status_cxx2011.xml: Fix docbook markup.
85 2011-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
87         * doc/xml/manual/appendix_contributing.xml: Do not use "here" as link
88         text.
89         * doc/xml/faq.xml: Likewise. Do not request standard library issues
90         to be reported to the libstdc++ mailing list.
91         * doc/xml/manual/status_cxx2011.xml: Document implementation-defined
92         behaviour.
93         * doc/xml/manual/status_cxxtr1.xml: Likewise.
94         * doc/xml/manual/utilities.xml: Fix grammar, probably caused by a
95         global search and replace of "part" by "chapter".
96         * doc/xml/manual/shared_ptr.xml: Remove outdated information.
97         * doc/xml/manual/messages.xml: Be more specific about systems where
98         using 'int' for catalog handle is not a problem, mention LWG issue.
100 2011-11-19  Paolo Carlini  <paolo.carlini@oracle.com>
102         * include/debug/bitset (operator[](size_t) const): Declare constexpr.
103         * include/profile/bitset: Likewise.
104         * testsuite/23_containers/bitset/operations/constexpr.cc: Split out
105         non portable bits to...
106         * testsuite/23_containers/bitset/operations/constexpr-2.cc: ... here.
108 2011-11-18  Harti Brandt  <hartmut.brandt@dlr.de>
110         PR libstdc++/51209
111         * include/bits/hashtable.h (_Hashtable<>::_M_find_node): Return
112         nullptr when no node is found.
113         * include/tr1/hashtable.h (_Hashtable<>::_M_find_node): Return
114         zero when no node is found.
116 2011-11-18  Paolo Carlini  <paolo.carlini@oracle.com>
118         * src/hash-long-double-aux.cc: Rename to...
119         * src/hash-long-double-tr1-aux.cc: ... this.
120         * src/compatibility-ldbl.cc: Adjust.
121         * src/hash_tr1.cc: Likewise.
122         * src/hash_c++0x.cc: Don't use src/hash-long-double-aux.cc.
123         * include/bits/functional_hash.h (hash<_Tp*>::operator(), specs
124         for integer types, hash<float>::operator(), hash<double>::operator(),
125         hash<long double>::operator()): Declare noexcept.
126         * include/debug/bitset (hash<__debug::bitset>::operator()): Likewise.
127         * include/debug/vector (hash<__debug::vector>::operator()): Likewise.
128         * include/std/system_error (hash<error_code>::operator()): Likewise.
129         * include/std/thread (hash<thread::id>::operator()): Likewise.
130         * include/std/bitset (hash<bitset>::operator()): Likewise.
131         * include/std/typeindex (hash<type_index>::operator()): Likewise.
132         * include/profile/bitset (hash<__profile::vector>::operator()):
133         Likewise.
134         * include/profile/vector (hash<__profile::vector>::operator()):
135         Likewise.
136         * include/ext/vstring.h (hash<__vstring>::operator(),
137         hash<__wvstring>::operator(), hash<__u16vstring>::operator(),
138         hash<__u32vstring>::operator()): Likewise.
139         * include/bits/shared_ptr.h (hash<shared_ptr>::operator()): Likewise.
140         * include/bits/shared_ptr_base.h (hash<__shared_ptr>::operator()):
141         Likewise.
142         * include/bits/unique_ptr.h (hash<unique_ptr>::operator()): Likewise.
143         * include/bits/basic_string.h (hash<string>::operator(),
144         hash<wstring>::operator(), hash<u16string>::operator(),
145         hash<u32string>::operator()): Likewise.
146         * include/bits/vector.tcc (hash<vector>::operator()): Likewise.
147         * include/bits/stl_bvector.h (hash<vector>::operator()): Likewise.
148         * libsupc++/typeinfo (type_info::hash_code): Use noexcept instead of
149         throw().
151 2011-11-17  Richard Henderson  <rth@redhat.com>
153         PR libstdc++/51181
154         * libsupc++/eh_tm.cc (free_any_cxa_exception): Protect the use
155         of __sync_sub_and_fetch with _GLIBCXX_ATOMIC_BUILTINS_4.
157 2011-11-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
159         * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
160         on darwin.
162 2011-11-17  Jason Merrill  <jason@redhat.com>
164         * testsuite/21_strings/basic_string/cons/char/moveable2.cc
165         (tstring): Add defaulted move assignment.
166         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc
167         (tstring): Add defaulted move assignment.
168         * testsuite/util/testsuite_tr1.h (NoexceptMoveConsClass): Add
169         defaulted move assignment operator.
170         (NoexceptMoveAssignClass): Add defaulted move constructor.
172 2011-11-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
174         * doc/xml/manual/status_cxx2011.xml: Status of piecewise construction
175         and ios_base::failure.
176         * doc/xml/manual/backwards_compatibility.xml: List headers in
177         alphabetical order.
179 2011-11-16  Andrew MacLeod  <amacleod@redhat.com>
181         PR libstdc++/51102
182         * include/bits/atomic_base.h (ATOMIC_BOOL_LOCK_FREE,
183         ATOMIC_POINTER_LOCK_FREE): New. Add missing macros.
185 2011-11-15  Paolo Carlini  <paolo.carlini@oracle.com>
187         PR libstdc++/51142
188         * include/debug/unordered_map (unordered_map<>::erase(iterator),
189         unordered_multimap<>::erase(iterator)): Add, consistently with
190         LWG 2059.
191         * include/debug/unordered_set (unordered_set<>::erase(iterator),
192         unordered_multiset<>::erase(iterator)): Likewise.
193         * include/debug/map.h (map<>::erase(iterator)): Likewise.
194         * include/debug/multimap.h (multimap<>::erase(iterator)): Likewise.
195         * include/profile/map.h (map<>::erase(iterator)): Likewise.
196         * include/profile/multimap.h (multimap<>::erase(iterator)): Likewise.
197         * include/bits/hashtable.h (_Hashtable<>::erase(iterator)): Likewise.
198         * include/bits/stl_map.h (map<>::erase(iterator)): Likewise.
199         * include/bits/stl_multimap.h (multimap<>::erase(iterator)): Likewise.
200         * include/bits/stl_tree.h (_Rb_tree<>::erase(iterator)): Likewise.
201         * testsuite/23_containers/unordered_map/erase/51142.cc: New.
202         * testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise.
203         * testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise.
204         * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
205         * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
206         * testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise.
207         * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
208         * testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise.
210 2011-11-15  Jason Dick  <dickphd@gmail.com>
212         PR libstdc++/51133
213         * include/tr1/poly_hermite.tcc (__poly_hermite_recursion): Fix
214         wrong sign in recursion relation.
216 2011-11-14  Paolo Carlini  <paolo.carlini@oracle.com>
218         * include/c_global/cmath (frexp, modf, remquo): Do not mark constexpr,
219         not viable anyway due to the pointer parameter.
221 2011-11-13  Paolo Carlini  <paolo.carlini@oracle.com>
223         * include/c_global/cmath (atan2, fmod, pow, copysign, fdim,
224         fma, fmax, fmin, hypot, nextafter, remainder, remquo): Simplify
225         constraining on the return type.
226         * include/tr1/cmath (copysign, fdim, fma, fmax, fmin, hypot,
227         nextafter, remainder, remquo): Likewise.
229 2011-11-13  Gerald Pfeifer  <gerald@pfeifer.com>
231         * using.xml: Use GNU/Linux.
233 2011-11-12  Jason Merrill  <jason@redhat.com>
235         PR c++/51060
236         * testsuite/25_algorithms/max/1.cc (test01): Drop references.
237         * testsuite/25_algorithms/min/1.cc (test01): Drop references.
238         * testsuite/25_algorithms/minmax/1.cc (test01): Drop references.
240 2011-11-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
242         PR libstdc++/51083
243         * include/ext/type_traits.h (__promote): Only define __type member
244         for integral and floating point types, to prevent math functions
245         participating in overload resolution for other types.
246         (__promote_2, __promote_3, __promote_4): Use __promote in default
247         template argument values, so deduction only succeeds for integral and
248         floating point types.
249         * testsuite/26_numerics/cmath/51083.cc: New.
250         * testsuite/26_numerics/complex/51083.cc: New.
251         * testsuite/tr1/8_c_compatibility/cmath/51083.cc: New.
252         * testsuite/tr1/8_c_compatibility/complex/51083.cc: New.
254 2011-11-10  Andrew MacLeod  <amacleod@redhat.com>
256         PR middle-end/51038
257         * include/bits/atomic_base.h (atomic_thread_fence): Call built-in.
258         (atomic_signal_fence): Call built-in.
259         (test_and_set, clear): Call new atomic built-ins.
261 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
263         * include/bits/allocator.h (__shrink_to_fit_aux::_S_do_it): Create
264         the new object with the same allocator.
265         * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: New.
267 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
269         * include/profile/unordered_map: Add missing copy constructors.
270         * include/profile/unordered_set: Likewise.
272 2011-11-09  Dodji Seketeli  <dodji@redhat.com>
274         PR c++/51027
275         * include/ext/pointer.h (rebind): Append missing ';'.
277 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
279         * include/bits/stl_vector.h (vector::_Alloc_traits): Make private.
280         * include/debug/vector: Add allocator-extended constructors, ensure
281         move assignment and swap have same allocator propagation semantics
282         and exceptions specification as base class.
283         * include/profile/vector: Likewise.
284         (vector::push_back(_Tp&&)): Forward argument as rvalue.
285         * testsuite/23_containers/vector/debug/alloc_prop.cc: New.
286         * doc/xml/manual/status_cxx2011.xml: Clarify status of container
287         requirements with respect to allocators.
288         (status.iso.200x): Add anchor for old ID to preserve existing links.
290 2011-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
292         * include/bits/shared_ptr_base.h (_Sp_counted_ptr): Make 'final'.
293         (_Sp_counted_deleter): Make 'final'. Use allocator_traits.
294         (_Sp_counted_ptr_inplace): Make 'final'. Use allocator_traits.
295         Derive from _Sp_counted_ptr instead of _Sp_counted_deleter to use EBO
296         for the allocator.
297         (__shared_count, __shared_ptr): Use allocator_traits.
298         * include/std/future (__future_base::_Result_alloc): Make 'final'. Use
299         allocator traits.
300         (__future_base::_Task_state): Make 'final'.
301         (__future_base::_Deferred_state): Likewise.
302         (__future_base::_Async_state): Likewise.
303         * testsuite/20_util/shared_ptr/cons/alloc_min.cc: New.
304         * testsuite/20_util/shared_ptr/creation/alloc_min.cc: New.
305         * testsuite/20_util/shared_ptr/creation/private.cc: New.
306         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
307         * testsuite/30_threads/packaged_task/cons/alloc_min.cc: New.
308         * testsuite/30_threads/promise/cons/alloc_min.cc: New.
310 2011-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
312         * acinclude.m4 ([GLIBCXX_ENABLE_VISIBILITY]): Rename to
313         [GLIBCXX_ENABLE_LIBSTDCXX_VISIBILITY], likewise for the
314         option itself, to --enable-libstdcxx-visibility.
315         * configure.ac: Adjust call.
316         * doc/xml/manual/configure.xml: Update.
317         * configure: Regenerate.
319 2011-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
321         * testsuite/29_atomics/headers/atomic/macros.cc: Avoid -Wall
322         warnings.
323         * testsuite/29_atomics/atomic/cons/user_pod.cc: Likewise.
325 2011-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
327         PR libstdc++/51018
328         * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
329         on netbsd.
331 2011-11-07  Aldy Hernandez  <aldyh@redhat.com>
332             Richard Henderson  <rth@redhat.com>
334         Merged from transactional-memory.
336         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_TM_1.
337         * libsupc++/eh_tm.cc: New file.
338         * libsupc++/unwind-cxx.h (__cxa_tm_cleanup): Declare.
339         * config/abi/pre/gnu.ver: Export __cxa_tm_cleanup.
340         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
341         * libsupc++/Makefile.am (sources): Add eh_tm.cc.
342         * libsupc++/Makefile.in: Rebuild.
344 2011-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
346         PR libstdc++/51018
347         * include/profile/impl/profiler_node.h (__stack_hash::
348         operator()(__stack_t)): Just use std::size_t everywhere.
350 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
352         * include/std/future (__future_base::_Ptr): Use alias-declaration.
353         (__is_same_pkgdtask): Rename to __constrain_pkgdtask and use decay
354         instead of remove_reference so that cv-quals are removed.
356 2011-11-07  Ed Smith-Rowland  <3dw4rd@verizon.net>
358         * include/precompiled/stdc++.h: Add cstdalign.
360 2011-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
362         * include/std/complex (complex<>::real(), complex<>::imag()):
363         Remove redundant const qualifiers.
365 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
367         * include/bits/ptr_traits.h (__rebind): Replace with...
368         (rebind): Implement using alias-declaration.
369         * include/ext/pointer.h (__rebind): Replace with...
370         (rebind): Implement using alias-declaration.
371         * include/bits/alloc_traits.h (__rebind_alloc, __rebind_traits):
372         Replace with...
373         (rebind_alloc, rebind_traits): Implement using alias-declaration.
374         * include/ext/alloc_traits.h (rebind): Use rebind_alloc instead of
375         __rebind_alloc.
376         * include/std/scoped_allocator (rebind): Likewise.
378 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
380         * include/std/mutex (call_once): Store closure in __once_functor
381         as bound function wrapper might not be copyable.
383 2011-11-07  Andrew MacLeod  <amacleod@redhat.com>
385         * include/bits/atomic_base.h (atomic_thread_fence): Revert.
386         (atomic_signal_fence): Revert.
388 2011-11-07  Andrew MacLeod  <amacleod@redhat.com>
390         * include/bits/atomic_base.h (atomic_thread_fence): Call builtin.
391         (atomic_signal_fence): Call builtin.
392         (atomic_flag::test_and_set): Call __atomic_exchange when it is lockfree,
393         otherwise fall back to call __sync_lock_test_and_set.
394         (atomic_flag::clear): Call __atomic_store when it is lockfree,
395         otherwise fall back to call __sync_lock_release.
397 2011-11-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
399         PR bootstrap/50982
400         * include/Makefile.am (${host_builddir}/gthr-posix.h): Reflect
401         gthr-posix.h move.
402         * include/Makefile.in: Regenerate.
404 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
406         * acinclude.m4 (GLIBCXX_CHECK_SC_NPROC_ONLN): Define.
407         (GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP): Define.
408         (GLIBCXX_CHECK_SYSCTL_HW_NCPU): Define.
409         * configure.ac: Use new checks.
410         * configure: Regenerate.
411         * config.h.in: Regenerate.
412         * src/thread.cc: Check new config macros.
413         * testsuite/lib/libstdc++.exp: Likewise.
415 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
417         * config/abi/pre/gnu.ver: Fix exports for string::pop_back.
419 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
421         * acinclude.m4: Check for <stdalign.h>
422         * configure: Regenerate.
423         * config.h.in: Likewise.
424         * include/Makefile.am: Add <cstdalign>.
425         * include/Makefile.in: Regenerate.
426         * include/c_global/cstdalign: New.
427         * testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New.
428         * doc/xml/manual/backwards_compatibility.xml: Update.
429         * doc/xml/manual/status_cxx2011.xml: Update.
431 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
433         PR libstdc++/50982
434         * include/std/mutex (__once_proxy): Use void parameter list to
435         work on implicit extern "C" systems.
437 2011-11-07  Xinliang David Li  <davidxl@google.com>
439         * include/backward/hashtable.h: Make __stl_prime_list
440         in comdat section.
442 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
444         * include/bits/basic_string.h (basic_string::at): Move adjacent to other
445         overload.
446         (basic_string::pop_back): Define.
447         * include/debug/string (__gnu_debug::basic_string::pop_back): Likewise.
448         * include/ext/vstring.h (__versa_string::pop_back): Likewise.
449         * config/abi/pre/gnu.ver: Add new symbols.
450         * testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New.
451         * testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New.
452         * testsuite/21_strings/basic_string/range_access.cc: Split to ...
453         * testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ...
454         * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here.
455         * testsuite/ext/vstring/modifiers/char/pop_back.cc: New.
456         * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New.
458 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
460         * doc/xml/manual/backwards_compatibility.xml: Fix autoconf tests for
461         C++11 compiler features and library headers. Add stable id
462         attributes. Use <filename> element for headers and surround in angle
463         brackets. Use <classname> for classes.
464         * doc/html/*: Regenerate.
466 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
468         * doc/xml/manual/status_cxx2011.xml: Document <cuchar> and
469         <cstdalign> as missing.
471 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
473         * doc/xml/faq.xml: Replace references to C++0x with C++11.
474         * doc/xml/manual/intro.xml: Likewise.
475         * doc/xml/manual/backwards_compatibility.xml: Likewise.
476         * doc/xml/manual/shared_ptr.xml: Likewise.
477         * doc/xml/manual/configure.xml: Likewise.
478         * doc/xml/manual/evolution.xml: Likewise.
479         * doc/xml/manual/using.xml: Likewise.
480         * doc/xml/manual/strings.xml: Likewise.
481         * doc/xml/manual/debug_mode.xml: Likewise.
482         * doc/xml/manual/policy_data_structures.xml: Likewise.
483         * doc/xml/manual/extensions.xml: Likewise.
484         * doc/xml/manual/diagnostics.xml: Likewise.
485         * doc/xml/manual/test.xml: Likewise.
486         * doc/xml/manual/status_cxx200x.xml: Likewise, and rename to...
487         * doc/xml/manual/status_cxx2011.xml: Here.
488         * doc/Makefile.am: Rename status_cxx200x.xml.
489         * doc/Makefile.in: Regenerate.
490         * doc/html/*: Regenerate.
492 2011-11-06  François Dumont <fdumont@gcc.gnu.org>
494         * testsuite/performance/23_containers/insert_erase/41975.cc: Add
495         tests to check performance with or without cache of hash code and with
496         string type that has a costlier hash functor than int type.
498 2011-11-06  Benjamin Kosnik  <bkoz@redhat.com>
499             Andrew MacLeod  <amacleod@redhat.com>
501         Merged from cxx-mem-model.
503         * include/Makefile.am (bits_headers): Remove atomic_0.h, atomic_2.h.
504         * include/Makefile.in: Regenerate.
505         * src/Makefile.am (sources): Rename atomic.cc to
506         compatibility-atomic-c++0x.cc.
507         * src/Makefile.in: Regenerate.
508         * include/bits/atomic_0.h: Remove.
509         * include/bits/atomic_2.h: Incorporate into...
510         * include/bits/atomic_base.h: ...this.  Use new __atomic routines.
511         * include/std/atomic: Add generic atomic calls to basic atomic class.
512         * src/atomic.cc: Move...
513         * src/compatibility-atomic-c++0x.cc: ...here.
514         * src/compatibility-c++0x.cc: Tweak.
515         * testsuite/29_atomics/atomic/cons/user_pod.cc: Fix.
516         * testsuite/29_atomics/atomic/requirements/explicit_instantiation/1.cc:
517           Same.
518         * testsuite/29_atomics/headers/atomic/macros.cc: Same.
520 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
522         * doc/xml/manual/test.xml: Fix dg-warning examples.
524 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
526         PR libstdc++/44436
527         * doc/xml/manual/status_cxx200x.xml: Document emplace members are
528         missing.
530 2011-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
532         PR libstdc++/49894
533         PR bootstrap/50982
534         * include/std/mutex (once_flag): Use NSDMI.
536 2011-11-04  Benjamin Kosnik  <bkoz@redhat.com>
538         * scripts/run_doxygen: Fix sed quoting.
540 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
542         * doc/doxygen/doxygroups.cc: Add markup for namespace tr2.
543         * include/tr2/bool_set: Adjust doxygen markup.
544         * include/tr2/dynamic_bitset: Same.
545         * include/tr2/type_traits: Same.
547 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
549         * doc/html/*: Regenerate.
551 2011-11-02  Richard B. Kreckel  <kreckel@ginac.de>
552             Paolo Carlini  <paolo.carlini@oracle.com>
554         PR libstdc++/50880
555         * include/std/complex (__complex_acosh): Fix in a better way,
556         use Kahan's formula.
557         * include/tr1/complex (__complex_acosh): Likewise.
559 2011-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
561         PR libstdc++/50951
562         * include/bits/random.tcc (operator<<(basic_ostream<>&,
563         const mersenne_twister_engine<>&): Output _M_p too.
564         (operator<<(basic_ostream<>&, const
565         subtract_with_carry_engine<>&): Likewise.
566         (operator>>(basic_istream<>&, mersenne_twister_engine<>&):
567         Reload it.
568         (operator>>(basic_istream<>&, subtract_with_carry_engine<>&):
569         Likewise.
570         * include/bits/random.h (mersenne_twister_engine<>::operator==):
571         Compare _M_p too.
572         (subtract_with_carry_engine<>::operator==): Compare _M_carry
573         and _M_p too.
574         (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too.
575         * testsuite/26_numerics/random/independent_bits_engine/
576         operators/serialize.cc: Extend.
577         * testsuite/26_numerics/random/subtract_with_carry_engine/
578         operators/serialize.cc: Likewise.
579         * testsuite/26_numerics/random/discard_block_engine/
580         operators/serialize.cc: Likewise.
581         * testsuite/26_numerics/random/mersenne_twister_engine/
582         operators/serialize.cc: Likewise.
583         * testsuite/26_numerics/random/linear_congruential_engine/
584         operators/serialize.cc: Likewise.
585         * testsuite/26_numerics/random/shuffle_order_engine/
586         operators/serialize.cc: Likewise.
588 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
590         * acinclude.m4 (GLIBCXX_CONFIGURE): Determine and substitute
591         toplevel_builddir.
592         (GLIBCXX_ENABLE_THREADS): Remove glibcxx_thread_h,
593         HAVE_GTHR_DEFAULT, enable_thread.
594         (GLIBCXX_CHECK_GTHREADS): Reflect gthr move to libgcc.
595         * include/Makefile.am (thread_host_headers): Remove
596         ${host_builddir}/gthr-tpf.h.
597         (${host_builddir}/gthr.h): Reflect gthr move to libgcc.
598         Use $<.
599         (${host_builddir}/gthr-single.h): Likewise.
600         (${host_builddir}/gthr-posix.h): Likewise.
601         (${host_builddir}/gthr-tpf.h): Remove.
602         (${host_builddir}/gthr-default.h): Likewise.
603         * configure, config.h.in: Regenerate.
604         * Makefile.in, doc/Makefile.in, include/Makefile.in,
605         libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
606         src/Makefile.intestsuite/Makefile.in: Regenerate.
608 2011-11-02  Benjamin Kosnik  <bkoz@redhat.com>
610         * include/bits/c++config: Add tr2 to versioned namespaces.
611         * scripts/run_doxygen: Adjust generated man files as well.
612         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
614 2011-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
616         * include/std/future (promise): Add constructors for uses-allocator
617         construction from rvalue promise.
618         (packaged_task): Implement LWG 2067. Add additional constructors for
619         uses-allocator construction.
620         * testsuite/30_threads/packaged_task/cons/3.cc: New.
621         * testsuite/30_threads/packaged_task/cons/alloc2.cc: New.
622         * testsuite/30_threads/promise/cons/alloc2.cc: New.
624 2011-10-31  Jason Merrill  <jason@redhat.com>
626         * include/Makefile.am (install-freestanding-headers): Install
627         c++0x_warning.h.
628         * libsupc++/initializer_list: Include it.
630 2011-10-31  Gerald Pfeifer  <gerald@pfeifer.com>
632         * acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.
633         * configure: Regenerate.
635 2011-10-31  Jason Merrill  <jason@redhat.com>
637         PR c++/50920
638         * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11.
640 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
642         * prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux.
643         Remove an obsolete reference to a Red Hat release we do not
644         support any longer.
645         Refer to Debian GNU/Linux.
647 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
649         * faq.xml (Who's in charge of it?): Refer to the Linux kernel
650         instead of just Linux.
651         (How do I install libstdc++?): Refer to GNU/Linux instead of
652         just Linux.
654 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
656         * testsuite/30_threads/condition_variable_any/50862.cc: Trivial
657         formatting fixes.
659 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
661         * testsuite/23_containers/unordered_map/operations/count.cc: New.
662         * testsuite/23_containers/multimap/operations/count.cc: Likewise.
663         * testsuite/23_containers/set/operations/count.cc: Likewise.
664         * testsuite/23_containers/unordered_multimap/operations/count.cc:
665         Likewise.
666         * testsuite/23_containers/unordered_set/operations/count.cc: Likewise.
667         * testsuite/23_containers/multiset/operations/count.cc: Likewise.
668         * testsuite/23_containers/unordered_multiset/operations/count.cc:
669         Likewise.
670         * testsuite/23_containers/map/operations/count.cc: Likewise.
672 2011-10-28  Richard B. Kreckel  <kreckel@ginac.de>
674         * include/std/complex (__complex_acosh): Just use '< _Tp()'.
675         * include/tr1/complex (__complex_acosh): Likewise.
677 2011-10-27  Richard B. Kreckel  <kreckel@ginac.de>
678             Paolo Carlini  <paolo.carlini@oracle.com>
680         PR libstdc++/50880
681         * include/std/complex (__complex_acosh): Fix for __z.real() < 0.
682         * include/tr1/complex (__complex_acosh): Likewise.
683         * testsuite/26_numerics/complex/50880.cc: New.
684         * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
686 2011-10-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
688         PR libstdc++/50862
689         * include/std/condition_variable (condition_variable_any::wait): Avoid
690         terminating if relocking user mutex throws during stack-unwinding.
691         * testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require.
693 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
695         * include/std/condition_variable (condition_variable_any): Remove
696         unused native_handle_type typedef.
697         * src/condition_variable.cc (condition_variable): Add missing noexcept
698         specifications.
699         * testsuite/30_threads/condition_variable_any/requirements/
700         typedefs.cc: Remove.
702 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
704         PR libstdc++/50862
705         * include/std/condition_variable (condition_variable_any::wait): Fix
706         deadlock and ensure _Lock::lock() is called on exit.
707         (condition_variable_any::native_handle): Remove, as per LWG 1500.
708         * testsuite/30_threads/condition_variable_any/50862.cc: New.
710 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
712         PR libstdc++/49894
713         * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
714         base classes to manage construction/destruction of native mutexes,
715         using NSDMI when INIT macros are defined.
716         (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
717         new base classes.
718         * include/std/condition_variable (condition_variable): Use NSDMI when
719         INIT macro is defined. Use noexcept.
720         * src/condition_variable.cc (condition_variable): Explicitly-default
721         constructor/destructor when using NSDMI. Use noexcept.
722         (condition_variable_any): Likewise.
724 2011-10-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
726         * testsuite/30_threads/async/49668.cc: Add missing dg-require.
727         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
729 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
731         PR libstdc++/50834
732         * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
734 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
736         PR libstdc++/50196
737         * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
738         * configure: Regenerate.
739         * include/std/mutex (timed_mutex, recursive_timed_mutex): Define
740         conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
741         * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
742         * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
743         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
744         Use dg-require-gthreads-timed instead of dg-require-gthreads.
745         * testsuite/30_threads/recursive_timed_mutex/native_handle/
746         typesizes.cc: Likewise.
747         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
748         Likewise.
749         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
750         Likewise.
751         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
752         Likewise.
753         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
754         Likewise.
755         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
756         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
757         Likewise.
758         * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
759         Likewise.
760         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
761         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
762         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
763         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
764         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
765         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
766         Likewise.
767         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
768         Likewise.
769         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
770         Likewise.
771         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
772         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
773         Likewise.
774         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
775         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
776         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
777         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
778         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
779         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
780         * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
781         Likewise.
782         * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
783         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
784         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
785         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
786         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
787         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
788         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
789         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
790         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
791         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
792         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
793         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
795 2011-10-19  Ed Smith-Rowland  <3dw4rd@verizon.net>
797         * include/tr2/bool_set (bool_set): New.
798         * include/tr2/bool_set.tcc: New.
799         * include/tr2/dynamic_bitset (dynamic_bitset): New.
800         * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
801         * include/Makefile.am: Add files.
802         * include/Makefile.in: Regenerate.
804 2011-10-19  Benjamin Kosnik  <bkoz@redhat.com>
806         * doc/doxygen/user.cfg.in: Add tr2 files.
807         * testsuite/tr2/headers/all.cc: New.
808         * testsuite/tr2/headers/using_namespace_std_tr2.cc: New.
810         * include/tr2/type_traits: Tweak.
812 2011-10-18  Jason Merrill  <jason@redhat.com>
814         PR c++/50500
815         * include/bits/shared_ptr.h: Default copy ctor and assignment.
816         * testsuite/util/testsuite_allocator.h: Define copy assignment.
817         * testsuite/util/testsuite_rvalref.h: Default copy assignment.
818         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags.
820 2011-10-17  Michael Spertus  <mike_spertus@symantec.com>
822         * include/tr2/type_traits (bases, direct_bases, typelist): New.
824 2011-10-17  Benjamin Kosnik  <bkoz@redhat.com>
826         * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes.
827         * libstdc++-v3/include/Makefile.in: Regenerate.
829         * scripts/create_testsuite_files: Search tr2 directory.
830         * testsuite/libstdc++-dg/conformance.exp: Same.
832         * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New.
833         * testsuite/tr2/bases/requirements/typedefs.cc: New.
834         * testsuite/tr2/bases/value.cc: New.
835         * testsuite/tr2/direct_bases/requirements/
836         explicit_instantiation.cc: New.
837         * testsuite/tr2/direct_bases/requirements/typedefs.cc: New.
838         * testsuite/tr2/direct_bases/value.cc: New.
840 2011-10-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
842         PR bootstrap/50715
843         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate
844         __cxa_get_exception_ptr.
846 2011-10-14  François Dumont  <francois.cppdevs@free.fr>
848         * testsuite/performance/23_containers/insert_erase/41975.cc: New.
850 2011-10-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
852         * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.
854 2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>
856         * configure.host: Use config/os/mingw32-w64 instead of
857         config/os/mingw32 if vendor key is "w64".
858         * config/os/mingw32-w64: Duplicate from config/os/mingw32.
859         * config/os/mingw32-w64/os_defines.h: Enable
860         _GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
861         * acinclude.m4: Set fully-dynamic-string to 1 when enabled,
862         0 when disabled or undefined if unset by user.
863         * include/bits/basic_string.h: Check if
864         _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
865         include/bits/basic_string.tcc: Likewise.
866         * configure: Regenerated.
867         * config.h.in: Likewise.
869 2011-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
871         PR libstdc++/50714
872         * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
873         _M_c_locale_codecvt member.
874         * testsuite/22_locale/codecvt_byname/50714.cc: New.
876 2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
878         PR c++/50594
879         * libsupc++/new (operator new, operator delete): Decorate with
880         __attribute__((__externally_visible__)).
881         * include/bits/c++config: Add _GLIBCXX_THROW.
882         * libsupc++/del_op.cc: Adjust.
883         * libsupc++/del_opv.cc: Likewise.
884         * libsupc++/del_opnt.cc: Likewise.
885         * libsupc++/del_opvnt.cc: Likewise.
886         * libsupc++/new_op.cc: Likewise.
887         * libsupc++/new_opv.cc: Likewise.
888         * libsupc++/new_opnt.cc: Likewise.
889         * libsupc++/new_opvnt.cc: Likewise.
890         * testsuite/18_support/50594.cc: New.
891         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
892         line number.
894 2011-10-11  Emil Wojak  <emil@wojak.eu>
896         PR c++/50661
897         * include/bits/stl_algobase.h (equal): Compare arrays of pointers
898         too with memcmp.
900 2011-10-10  Benjamin Kosnik  <bkoz@redhat.com>
902         PR libstdc++/49818
903         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols.
904         * testsuite/util/testsuite_abi.cc: Same.
905         * libsupc++/unwind-cxx.h: Move required eh API...
906         * libsupc++/cxxabi.h: ... to here. Add required forward declarations.
907         Use _GLIBCXX_NOTHROW.
908         * libsupc++/pure.cc (__cxa_deleted_virtual): Add.
909         * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW.
910         * libsupc++/eh_catch.cc: Same.
911         * libsupc++/eh_globals.cc: Same.
912         * libsupc++/eh_type.cc: Same.
914 2011-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
916         * testsuite/util/testsuite_allocator.h (uneq_allocator): Add
917         propagate_on_container_swap typedef for C++0x testing.
919 2011-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
921         * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives,
922         for C++0x testing too.
923         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
924         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
925         * testsuite/24_iterators/istreambuf_iterator/requirements/
926         base_classes.cc: Adjust for C++0x testing.
927         * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode.
928         * testsuite/ext/codecvt/char-2.cc: Likewise.
929         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
931 2011-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
933         * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode
934         when int_type is unsigned.
936 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
938         PR libstdc++/49561
939         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
940         Add in C++0x mode.
941         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
942         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
943         list<>::size, list<>::swap, list<>::splice): Use it.
944         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
945         * include/bits/list.tcc (list<>::erase): Likewise.
946         (list<>::merge): Adjust in C++0x mode.
947         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
948         Adjust dg-error line number.
949         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
950         Likewise.
951         * testsuite/23_containers/list/requirements/dr438/
952         constructor_1_neg.cc: Likewise.
953         * testsuite/23_containers/list/requirements/dr438/
954         constructor_2_neg.cc: Likewise.
956 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
958         * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall
959         warning.
961 2011-10-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
963         * include/ext/alloc_traits.h (__alloc_traits::max_size): Define.
964         (__alloc_traits::rebind): Define.
965         * include/bits/stl_vector.h: Use them.
966         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define.
967         * testsuite/23_containers/vector/allocator/minimal.cc: New.
968         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
969         Adjust dg-error line numbers.
970         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
971         Likewise.
972         * testsuite/23_containers/vector/requirements/dr438/
973         constructor_1_neg.cc: Likewise.
974         * testsuite/23_containers/vector/requirements/dr438/
975         constructor_2_neg.cc: Likewise.
977 2011-10-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
979         * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
980         operator and use.
982 2011-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
984         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
985         insert(const_iterator, value_type&&)): Don't define here...
986         * include/bits/unordered_set.h (__unordered_set<>,
987         __unordered_multiset<>): ... define here instead.
989 2011-09-29  Jason Merrill  <jason@redhat.com>
991         * testsuite/util/testsuite_tr1.h (test_property): Avoid
992         ambiguity.
994 2011-10-01  François Dumont  <fdumont@gcc.gnu.org>
996         * include/debug/vector (vector<>::erase(iterator, iterator): Check
997         iterators equality using normal iterators.
998         * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
1000 2011-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
1002         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
1003         Remove noexcept from declaration too.
1005 2011-09-27  Benjamin Kosnik  <bkoz@redhat.com>
1007         * doc/html/*: Regenerate.
1009         * doc/Makefile.am: Un-nest the ext output directory.
1010         * doc/Makefile.in: Regenerate.
1011         * spine.xml: Remove authors, add abstract for short
1012         contents. Rename to index.html for html output.
1013         * manual/spine.xml: Authors here, manual starts with index.html.
1014         * api.xml: Update.
1015         * faq.xml: Same.
1017 2011-09-27  Marcus Shawcroft  <marcus.shawcroft@arm.com>
1019         * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
1020         of name().
1022 2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
1024         PR libstdc++/50529
1025         * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
1026         Fix to do nothing if the range is empty.
1027         * include/bits/stl_bvector.h: Likewise.
1028         * include/bits/deque.tcc: Likewise.
1029         * include/debug/vector: Adjust.
1030         * include/debug/deque: Likewise.
1031         * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
1032         * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
1033         * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
1035 2011-09-25  Benjamin Kosnik  <bkoz@redhat.com>
1036             Jonathan Wakely  <jwakely.gcc@gmail.com>
1038         PR libstdc++/48698
1039         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
1040         * configure.ac: Move AC_SUBST of libtool_VERSION past call to
1041         GLIBCXX_ENABLE_SYMVERS.
1042         * configure: Regenerate.
1043         * include/bits/c++config: Use __7 as versioned namespace name.
1044         * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
1045         per above.
1046         * include/c_global/cwchar: Adjust nested namespaces.
1047         * testsuite/20_util/bind/48698.cc: Add test case.
1048         * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
1050 2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
1052         Revert (no longer necessary post r179130):
1054         2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
1056         * testsuite/util/testsuite_error.h: Add empty default constructor
1057         to __gnu_test::test_category and
1058         __gnu_test::test_derived_category.
1059         * src/future.cc: Add empty default constructor to
1060         future_error_category.
1061         * src/system_error.cc: Add default ctor to generic_error_category
1062         and system_error_category.
1064 2011-09-24  John Salmon  <john.salmon@deshaw.com>
1066         PR libstdc++/50510
1067         * include/bits/random.tcc (seed_seq::generate): Fix computation.
1069 2011-09-24  John Salmon  <john.salmon@deshaw.com>
1071         PR libstdc++/50509
1072         * include/bits/random.tcc (seed_seq::generate): Fix computation.
1074 2011-09-21  Benjamin Kosnik  <bkoz@redhat.com
1076         * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
1077         * doc/Makefile.in: Regenerate.
1079 2011-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
1081         * src/limits.cc: Replace everywhere __int128_t -> __int128, and
1082         __uint128_t -> unsigned __int128.
1083         * include/std/type_traits: Likewise.
1084         * include/std/limits: Likewise.
1085         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
1086         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
1087         * testsuite/18_support/numeric_limits/40856.cc: Likewise.
1088         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
1089         * testsuite/util/testsuite_common_types.h: Likewise.
1090         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
1091         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
1092         * testsuite/20_util/is_floating_point/value.cc: Likewise.
1093         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
1094         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
1095         * testsuite/20_util/is_signed/value.cc: Likewise.
1096         * testsuite/20_util/is_unsigned/value.cc: Likewise.
1097         * testsuite/20_util/is_integral/value.cc: Likewise.
1098         * config/abi/pre/gnu.ver: Likewise.
1099         * acinclude.m4: Likewise.
1100         * configure: Regenerate.
1101         * config.h.in: Likewise.
1103 2011-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
1105         PR libstdc++/40856
1106         * include/std/limits (numeric_limits<__int128_t>,
1107         numeric_limits<__uint128_t>): Add.
1108         * src/limits.cc:Define.
1109         * config/abi/pre/gnu.ver: Export.
1110         * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
1111         * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
1112         (limits_tl): Use it.
1113         * testsuite/18_support/numeric_limits/requirements/
1114         constexpr_functions.cc: Likewise.
1115         * testsuite/18_support/numeric_limits/40856.cc: New.
1116         * testsuite/18_support/numeric_limits/dr559.cc: Extend.
1117         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
1118         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
1119         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
1120         line numbers.
1121         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
1122         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
1123         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
1124         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
1125         Likewise.
1126         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
1127         Likewise.
1128         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
1129         Likewise.
1131 2011-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
1133         PR libstdc++/50441
1134         * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
1135         * configure.ac: Call it.
1136         * include/std/type_traits (__is_integral_helper<__int128_t>,
1137         __is_integral_helper<__uint128_t>,
1138         __is_floating_point_helper<__float128>,
1139         __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
1140         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
1141         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
1142         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
1143         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
1144         * testsuite/20_util/is_signed/value.cc: Likewise.
1145         * testsuite/20_util/is_unsigned/value.cc: Likewise.
1146         * testsuite/20_util/is_integral/value.cc: Likewise.
1147         * testsuite/20_util/is_floating_point/value.cc: New.
1148         * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
1149         Likewise.
1150         * testsuite/20_util/is_floating_point/requirements/
1151         explicit_instantiation.cc: Likewise.
1152         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1153         dg-error line numbers.
1154         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1155         Likewise.
1156         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1157         * configure: Regenerate.
1158         * config.h.in: Likewise.
1160 2011-09-17  François Dumont  <fdumont@gcc.gnu.org>
1162         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
1163         _RehashPolicy&)): Commit the modification of the policy only if no
1164         exception occured.
1165         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
1166         New.
1168 2011-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1170         * testsuite/23_containers/array/comparison_operators/
1171         less_or_equal.cc: New.
1172         * testsuite/23_containers/array/comparison_operators/
1173         greater_or_equal.cc: Likewise.
1174         * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
1175         * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
1176         * testsuite/23_containers/array/comparison_operators/not_equal.cc:
1177         Likewise.
1178         * testsuite/23_containers/array/comparison_operators/greater.cc:
1179         Likewise.
1180         * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
1181         * testsuite/23_containers/array/capacity/empty.cc: Likewise.
1182         * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
1183         * testsuite/23_containers/array/capacity/size.cc: Likewise.
1184         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
1185         Likewise.
1186         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
1187         Likewise.
1188         * testsuite/23_containers/array/element_access/at_out_of_range.cc:
1189         Likewise.
1190         * testsuite/23_containers/array/element_access/back.cc: Likewise.
1191         * testsuite/23_containers/array/element_access/front.cc: Likewise.
1192         * testsuite/23_containers/array/element_access/data.cc: Likewise.
1193         * testsuite/23_containers/array/cons/aggregate_initialization.cc:
1194         Likewise.
1195         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
1196         Likewise.
1197         * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
1198         * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
1199         * testsuite/23_containers/array/specialized_algorithms/swap.cc:
1200         Likewise.
1201         * testsuite/23_containers/array/constexpr_get.cc: Move...
1202         * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
1203         ... here.
1204         * testsuite/23_containers/array/requirements/get.cc: Move...
1205         * testsuite/23_containers/array/tuple_interface/get: ... here.
1206         * testsuite/23_containers/array/at_neg.cc: Move...
1207         * testsuite/23_containers/array/element_access: ... here.
1208         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
1209         Move...
1210         * testsuite/23_containers/array/capacity: ... here.
1211         * testsuite/23_containers/array/requirements/
1212         constexpr_element_access.cc: Move...
1213         * testsuite/23_containers/array/element_access: ... here.
1215         * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
1216         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
1217         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
1218         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
1219         * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
1221         * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
1222         * testsuite/20_util/forward/1_neg.cc: Likewise.
1224 2011-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
1226         * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
1227         (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
1228         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
1229         make_tuple test.
1230         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1231         line number.
1233 2011-09-14  François Dumont  <fdumont@gcc.gnu.org>
1234             Paolo Carlini  <paolo.carlini@oracle.com>
1236         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
1237         hash policy _M_prev_resize on exception.
1238         (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
1239         before using it and use latter method to have it restored on exception.
1240         (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
1241         (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
1242         (_Hashtable<>::rehash): Likewise.
1243         * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
1244         * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
1245         Likewise.
1247 2011-09-13  Paul Brook  <paul@codesourcery.com>
1249         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
1250         * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
1251         * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
1252         __ARM_EABI_UNWINDER__ check.
1253         (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
1254         (get_ttype_entry): Use generic implementation on ARM EABI.
1255         (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
1256         UNWIND_STACK_REG.
1257         (PERSONALITY_FUNCTION): Set ttype_base.
1259 2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
1260             Paolo Carlini  <paolo.carlini@oracle.com>
1262         * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
1263         _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
1264         constexpr functions; adjust everywhere.
1265         (__get_helper, get): Declare constexpr all three overloads.
1266         (tuple_cat): Declare constexpr; use late return type to improve
1267         error messages.
1268         * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
1269         __pair_get<>::__const_get, get): Declare all constexpr.
1270         * include/std/array (get): Likewise.
1271         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
1272         tuple_cat test.
1273         * testsuite/23_containers/array/constexpr_get.cc: New.
1274         * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
1275         * testsuite/20_util/pair/constexpr_get.cc: Likewise.
1276         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
1277         line number.
1279 2011-09-12  Jason Merrill  <jason@redhat.com>
1281         * testsuite/20_util/is_constructible/value-2.cc: Adjust
1282         expected values.
1284 2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>
1286         PR libstdc++/50159
1287         * include/std/tuple (tuple_cat): Reimplement according to the
1288         resolution of LWG 1385.
1289         * include/std/type_traits: Define __and_ and __or_ for zero
1290         arguments too; minor tweaks.
1291         * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
1292         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
1293         for now tuple_cat test.
1294         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1295         line numbers.
1296         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1297         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1298         Likewise.
1299         * doc/xml/manual/status_cxx200x.xml: Update.
1301 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
1303         * include/std/tuple: Use everywhere std::size_t... instead of int...
1304         * include/std/functional: Likewise.
1305         * include/std/scoped_allocator: Likewise.
1306         * include/bits/stl_pair.h: Likewise.
1308 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
1310         PR libstdc++/50336
1311         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
1312         Implement LWG 445 in C++0x mode.
1313         * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
1314         New.
1316 2011-09-08  Dodji Seketeli  <dodji@redhat.com>
1318         PR c++/33255 - Support -Wunused-local-typedefs warning
1319         * include/ext/bitmap_allocator.h
1320         (__detail::__mini_vector::__lower_bound): Remove unused typedef.
1321         * src/istream.cc (std::operator>>(basic_istream<char>& __in,
1322         basic_string<char>& __str)): Likewise.
1323         (std::getline): Likewise.
1324         * src/valarray.cc (__valarray_product): Likewise.
1326 2011-09-07  François Dumont  <francois.cppdevs@free.fr>
1328         * testsuite/23_containers/array/at.cc: Revert to...
1329         * testsuite/23_containers/array/at_neg.cc: ...this.
1331 2011-09-07  Jason Merrill  <jason@redhat.com>
1333         * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
1334         * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
1336 2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>
1338         * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
1339         (tuple(tuple&&)): Same.
1340         (tuple(const tuple<_UElements...>& __in)): Same.
1341         (tuple(tuple<_UElements...>&& __in)): Same.
1342         (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
1343         Same.
1344         (get): Same.
1345         * include/std/array: Consolidate array::data usage.
1346         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
1347         Remove extra include.
1348         * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
1349         * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
1350         * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
1351         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1353 2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
1354             Paolo Carlini  <paolo.carlini@oracle.com>
1356         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
1357         _M_next_bkt): Cast _M_max_load_factor to long double.
1358         (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
1359         (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
1360         float quantities to long double.
1362 2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>
1364         PR libstdc++/50257
1365         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
1366         _M_next_bkt): Optimize for small argument.
1368 2011-09-02  François Dumont  <fdumont@gcc.gnu.org>
1370         * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
1371         allocate): Update allocation count only if allocation succeeded.
1373 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1375         * include/std/bitset: Trivial formatting fixes.
1377 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1378             Marc Glisse  <marc.glisse@normalesup.org>
1380         * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
1381         (_Base_bitset<>::_M_are_all): Add.
1382         (bitset<>::all): Use the latter, improve implementation.
1384 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1385             Marc Glisse  <marc.glisse@normalesup.org>
1387         PR libstdc++/50268
1388         * include/std/bitset (struct _Sanitize_val): Add.
1389         (bitset<>::bitset(unsigned long long)): Fix.
1390         * testsuite/23_containers/bitset/cons/50268.cc: New.
1392 2011-09-01  Paolo Carlini  <paolo.carlini@oracle.com>
1394         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
1395         Remove noexcept, the move constructor allocates memory; rearrange
1396         the code in the body to consistently update __ht._M_rehash_policy
1397         before using _M_next_bkt on it.
1398         * include/debug/unordered_map: Adjust.
1399         * include/debug/unordered_set: Likewise.
1400         * include/profile/unordered_map: Likewise.
1401         * include/profile/unordered_set: Likewise.
1402         * testsuite/23_containers/unordered_map/cons/
1403         noexcept_move_construct.cc: Remove.
1404         * testsuite/23_containers/unordered_set/cons/
1405         noexcept_move_construct.cc: Likewise.
1406         * testsuite/23_containers/unordered_multimap/cons/
1407         noexcept_move_construct.cc: Likewise.
1408         * testsuite/23_containers/unordered_multiset/cons/
1409         noexcept_move_construct.cc: Likewise.
1411 2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
1413         * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
1414         Fix order of template parameters per LWG 2004.
1416 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
1418         * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
1419         * testsuite/24_iterators/move_iterator/dr2061.cc: New.
1420         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1421         line numbers.
1423 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
1425         * config/os/mingw32/error_constants.h: Fix commas.
1427 2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
1429         * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
1431 2011-08-29  Kai Tietz  <ktietz@redhat.com>
1433         * configure: Regenerated.
1434         * config.h.in: Regenerated.
1435         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
1436         checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
1437         EWOULDBLOCK.
1438         * config/os/mingw32/error_constants.h (errc): Add
1439         enumerator values no_child_process, no_space_on_device,
1440         not_supported, operation_not_permitted, operation_would_block,
1441         timed_out, and value_too_large,
1443 2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
1445         PR libstdc++/50118
1446         * include/bits/stl_list.h (_List_base<>::
1447         _List_base(const allocator_type&)): Remove.
1448         (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
1449         (list<>:list(const allocator_type&), list(size_type, const
1450         value_type&, const allocator_type&),
1451         list(initializer_list<, const allocator_type&),
1452         list(_InputIterator, _InputIterator, const allocator_type&),
1453         insert(iterator, size_type, const value_type&),
1454         insert(iterator, _InputIterator, _InputIterator)): Adjust.
1455         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
1456         const allocator_type&)): Fix.
1457         * include/bits/stl_map.h (map<>::map(const _Compare&,
1458         const allocator_type&), map(initializer_list<>,
1459         const _Compare&, const allocator_type&), map(_InputIterator,
1460         _InputIterator, const _Compare&, const allocator_type&),
1461         get_allocator): Adjust.
1462         * include/bits/stl_set.h (set<>::set(const _Compare&,
1463         const allocator_type&), set(initializer_list<>,
1464         const _Compare&, const allocator_type&), set(_InputIterator,
1465         _InputIterator, const _Compare&, const allocator_type&),
1466         get_allocator): Likewise.
1467         * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
1468         const allocator_type&), multimap(initializer_list<>,
1469         const _Compare&, const allocator_type&), multimap(_InputIterator,
1470         _InputIterator, const _Compare&, const allocator_type&),
1471         get_allocator): Likewise.
1472         * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
1473         const allocator_type&), multiset(initializer_list<>,
1474         const _Compare&, const allocator_type&), multiset(_InputIterator,
1475         _InputIterator, const _Compare&, const allocator_type&),
1476         get_allocator): Likewise.
1477         * include/bits/forward_list.h (_Fwd_list_base<>::
1478         _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
1479         const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
1480         Remove.
1481         (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
1482         _Fwd_list_base(const _Fwd_list_base&,
1483         const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
1484         const _Node_alloc_type&)): Add.
1485         (forward_list<>::forward_list(const _Alloc&),
1486         forward_list(const forward_list&, const _Alloc&),
1487         forward_list(forward_list&&, const _Alloc&),
1488         forward_list(size_type, const _Tp&, const _Alloc&),
1489         forward_list(_InputIterator, _InputIterator, const _Alloc&),
1490         forward_list(std::initializer_list<>, const _Alloc&),
1491         get_allocator): Adjust.
1492         * include/bits/forward_list.tcc: Adjust.
1493         * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
1494         * testsuite/23_containers/unordered_map/requirements/
1495         explicit_instantiation/5.cc: New.
1496         * testsuite/23_containers/multimap/requirements/
1497         explicit_instantiation/5.cc: Likewise.
1498         * testsuite/23_containers/multimap/requirements/
1499         explicit_instantiation/5_c++0x.cc: Likewise.
1500         * testsuite/23_containers/set/requirements/explicit_instantiation/
1501         5.cc: Likewise.
1502         * testsuite/23_containers/set/requirements/explicit_instantiation/
1503         5_c++0x.cc: Likewise.
1504         * testsuite/23_containers/unordered_multimap/requirements/
1505         explicit_instantiation/5.cc: Likewise.
1506         * testsuite/23_containers/forward_list/requirements/
1507         explicit_instantiation/5.cc: Likewise.
1508         * testsuite/23_containers/unordered_set/requirements/
1509         explicit_instantiation/5.cc: Likewise.
1510         testsuite/23_containers/multiset/requirements/explicit_instantiation/
1511         5.cc: Likewise.
1512         * testsuite/23_containers/multiset/requirements/
1513         explicit_instantiation/5_c++0x.cc: Likewise.
1514         * testsuite/23_containers/list/requirements/explicit_instantiation/
1515         5_c++0x.cc: Likewise.
1516         * testsuite/23_containers/list/requirements/explicit_instantiation/
1517         5.cc: Likewise.
1518         * testsuite/23_containers/unordered_multiset/requirements/
1519         explicit_instantiation/5.cc: Likewise.
1520         * testsuite/23_containers/map/requirements/explicit_instantiation/
1521         5.cc: Likewise.
1522         * testsuite/23_containers/map/requirements/explicit_instantiation/
1523         5_c++0x.cc: Likewise.
1524         * testsuite/23_containers/forward_list/requirements/dr438/
1525         assign_neg.cc: Adjust dg-error line number.
1526         * testsuite/23_containers/forward_list/requirements/dr438/
1527         insert_neg.cc: Likewise.
1528         * testsuite/23_containers/forward_list/requirements/dr438/
1529         constructor_1_neg.cc: Likewise.
1530         * testsuite/23_containers/forward_list/requirements/dr438/
1531         constructor_2_neg.cc: Likewise.
1532         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1533         Likewise.
1534         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1535         Likewise.
1536         * testsuite/23_containers/list/requirements/dr438/
1537         constructor_1_neg.cc: Likewise.
1538         * testsuite/23_containers/list/requirements/dr438/
1539         constructor_2_neg.cc: Likewise.
1541 2011-08-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1543         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
1544         (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
1545         * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
1546         (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
1547         * configure: Regenerate.
1548         * config.h.in: Regenerate.
1549         * config/os/solaris/solaris2.8/os_defines.h
1550         (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
1551         * config/os/solaris/solaris2.9: Remove.
1552         * configure.host (solaris2.8): Merge with ...
1553         (solaris2.9, solaris2.1[0-9]): ... this.
1554         Always use os/solaris/solaris2.8.
1556 2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
1558         * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
1559         workaround for c++/49045.
1560         * include/bits/algorithmfwd.h: Likewise.
1562 2011-08-25  Tom Tromey  <tromey@redhat.com>
1564         * testsuite/libstdc++-prettyprinters/simple.cc: New file.
1565         * testsuite/lib/gdb-test.exp: New file.
1566         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
1567         file.
1569 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1571         * include/tr1/cmath: Extend/update comment.
1573 2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
1575         PR libstdc++/50119
1576         * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
1577         _OutputIterator, input_iterator_tag)): Fix.
1578         * testsuite/25_algorithms/copy_n/50119.cc: New.
1580 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1581             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1583         PR libstdc++/1773
1584         * config/os/solaris2.7: Rename to config/os/solaris2.9.
1585         * config/os/solaris/solaris2.9/os_defines.h
1586         (__CORRECT_ISO_CPP_MATH_H_PROTO1)
1587         (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
1588         (__CORRECT_ISO_CPP_STRING_H_PROTO)
1589         (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
1590         * config/os/solaris2.8/ctype_base.h,
1591         config/os/solaris2.8/ctype_configure_char.cc,
1592         config/solaris2.8/ctype_inline.h,
1593         config/os/solaris2.8/os_defines.h: New files.
1595         * configure.host (solaris2.[89], solaris2.1[0-9]):
1596         Split into ...
1597         (solaris2.8): ... this.
1598         Use os/solaris/solaris2.8.
1599         (solaris2.9, solaris2.1[0-9]): ... and this.
1600         Use os/solaris/solaris2.9.
1602         * include/c_global/cmath (double abs(double)): Wrap in
1603         !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
1604         !__CORRECT_ISO_CPP_MATH_H_PROTO2.
1605         (float abs(float), long double abs(long double): Wrap in
1606         !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1607         (float acos(float), long double acos(long double)): Likewise.
1608         (float asin(float), long double asin(long double)): Likewise.
1609         (float atan(float), long double atan(long double)): Likewise.
1610         (float atan2(float, float), long double atan2(long double, long
1611         double)): Likewise.
1612         (float ceil(float), long double ceil(long double)): Likewise.
1613         (float cos(float), long double cos(long double)): Likewise.
1614         (float cosh(float), long double cosh(long double)): Likewise.
1615         (float exp(float), long double exp(long double)): Likewise.
1616         (float fabs(float), long double fabs(long double)): Likewise.
1617         (float floor(float), long double floor(long double)): Likewise.
1618         (float fmod(float, float), long double fmod(long double, long
1619         double)): Likewise.
1620         (float frexp(float, int*), long double frexp(long double, int*)):
1621         Likewise.
1622         (float ldexp(float, int), long double ldexp(long double, int)):
1623         Likewise.
1624         (float log(float), long double log(long double)): Likewise.
1625         (float log10(float), long double log10(long double)): Likewise.
1626         (float modf(float, float*), long double modf(long double, long
1627         double*))): Likewise.
1628         (float pow(float, float), long double pow(long double, long
1629         double)): Likewise.
1630         (float sin(float), long double sin(long double)): Likewise.
1631         (float sinh(float), long double sinh(long double)): Likewise.
1632         (float sqrt(float), long double sqrt(long double)): Likewise.
1633         (float tan(float), long double tan(long double)): Likewise.
1634         (float tanh(float), long double tanh(long double)): Likewise.
1635         * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
1636         long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
1637         * include/tr1/cmath (float fabs(float), long double fabs(long
1638         double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1640 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1642         * doc/xml/images/*: Image and image filename changes.
1644 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1646         * testsuite/data/make_graph_test_infos.xml: Edit.
1647         * testsuite/data/make_graph_htmls.xml: Remove
1648         * scripts/make_graph.py: Edit, fix.
1649         * scripts/make_graphs.py: Remove.
1651         * doc/Makefile.am (doc-svg-performance): New.
1652         (doc-html-performance): Remove.
1653         * doc/Makefile.in: Regenerate.
1655         * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
1656         * doc/xml/manual/policy_data_structures.xml: Same.
1657         * doc/xml/manual/locale.xml: Same.
1659         Testsuite renames.
1660         * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
1661         Rename.
1662         * performance/ext/pb_ds/random_int_find_timing.cc: Same.
1663         * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
1664         * performance/ext/pb_ds/multimap_text_find_timing.hpp
1665         * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
1666         * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
1667         * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
1668         * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
1669         * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
1670         * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
1671         * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
1672         * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
1673         * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
1674         * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
1675         * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
1676         * performance/ext/pb_ds/text_find_timing.cc: Same.
1677         * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
1678         * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
1679         * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
1680         * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
1681         * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
1682         * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
1683         * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
1684         * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
1685         * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
1686         Same.
1687         * performance/ext/pb_ds/multimap_text_insert_timing.hpp
1688         * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
1689         * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
1691         * performance/ext/pb_ds/all_int_find.cc: To these new files...
1692         * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
1693         * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
1694         * performance/ext/pb_ds/all_text_find.cc: ...this.
1695         * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
1696         * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
1697         * performance/ext/pb_ds/multimap_text_find.hpp
1698         * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
1699         * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
1700         * performance/ext/pb_ds/multimap_text_insert.hpp
1701         * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
1702         * performance/ext/pb_ds/multimap_text_insert_mem.hpp
1703         * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
1704         * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
1705         * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
1706         * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
1707         * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
1708         * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
1709         * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
1710         * performance/ext/pb_ds/priority_queue_text_modify.hpp
1711         * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
1712         * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
1713         * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
1714         * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
1715         * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
1716         * performance/ext/pb_ds/tree_split_join.cc: ...this.
1717         * performance/ext/pb_ds/tree_text_insert.cc: ...this.
1718         * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
1720         * doc/xml/images/*: Image and image filename changes.
1722 2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
1724         * include/c_global/cmath (fmod(_Tp, _Up)): Add.
1725         * include/c_std/cmath: Likewise.
1727 2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
1729         * include/std/future: constexpr functions are implicitly inline.
1730         * include/std/chrono: Likewise.
1731         * include/std/complex: Likewise.
1732         * include/bits/move.h: Likewise.
1733         * include/bits/stl_pair.h: Likewise.
1735 2011-08-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1737         * include/bits/alloc_traits.h: Fix doxygen @headername.
1739 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1741         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
1743 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1745         * doc/doxygen/user.cfg.in: Add scoped_allocator.
1747         * include/debug/safe_sequence.h: Fix doxygen markup.
1748         * include/debug/safe_unordered_base.h: Same.
1749         * include/debug/safe_local_iterator.tcc: Same.
1750         * include/debug/safe_unordered_container.h: Same.
1751         * include/std/valarray: Same.
1752         * include/std/iomanip: Same.
1753         * include/std/streambuf: Same.
1754         * include/std/bitset: Same.
1755         * include/std/fstream: Same.
1756         * include/std/functional: Same.
1757         * include/std/istream: Same.
1758         * include/std/ostream: Same.
1759         * include/std/scoped_allocator: Same.
1760         * include/std/sstream: Same.
1761         * include/parallel/multiway_merge.h: Same.
1762         * include/parallel/base.h: Same.
1763         * include/parallel/for_each_selectors.h: Same.
1764         * include/parallel/multiway_mergesort.h: Same.
1765         * include/parallel/search.h: Same.
1766         * include/parallel/partial_sum.h: Same.
1767         * include/parallel/queue.h: Same.
1768         * include/parallel/sort.h: Same.
1769         * include/parallel/random_number.h: Same.
1770         * include/ext/vstring.h: Same.
1771         * include/ext/algorithm: Same.
1772         * include/ext/pb_ds/assoc_container.h: Same.
1773         * include/ext/bitmap_allocator.h: Same.
1774         * include/ext/stdio_filebuf.h: Same.
1775         * include/ext/memory: Same.
1776         * include/ext/functional: Same.
1777         * include/bits/basic_ios.h: Same.
1778         * include/bits/stl_list.h: Same.
1779         * include/bits/stl_map.h: Same.
1780         * include/bits/stl_algobase.h: Same.
1781         * include/bits/stl_queue.h: Same.
1782         * include/bits/gslice.h: Same.
1783         * include/bits/locale_classes.h: Same.
1784         * include/bits/stl_set.h: Same.
1785         * include/bits/locale_facets.h: Same.
1786         * include/bits/stl_stack.h: Same.
1787         * include/bits/stl_heap.h: Same.
1788         * include/bits/forward_list.h: Same.
1789         * include/bits/stream_iterator.h: Same.
1790         * include/bits/basic_string.h: Same.
1791         * include/bits/stl_multimap.h: Same.
1792         * include/bits/stl_pair.h: Same.
1793         * include/bits/ios_base.h: Same.
1794         * include/bits/stl_numeric.h: Same.
1795         * include/bits/stl_vector.h: Same.
1796         * include/bits/stl_deque.h: Same.
1797         * include/bits/codecvt.h: Same.
1798         * include/bits/stl_multiset.h: Same.
1799         * include/bits/stl_uninitialized.h: Same.
1800         * include/bits/ptr_traits.h: Same.
1801         * include/bits/slice_array.h: Same.
1802         * include/bits/stl_iterator_base_funcs.h: Same.
1803         * include/bits/stl_algo.h: Same.
1804         * include/bits/stl_iterator.h: Same.
1805         * include/bits/stl_tempbuf.h: Same.
1806         * include/bits/regex.h: Same.
1807         * include/bits/range_access.h: Same.
1808         * include/bits/random.h: Same.
1809         * include/bits/alloc_traits.h: Same.
1810         * include/bits/regex_error.h: Same.
1811         * include/bits/locale_facets_nonio.h: Same.
1812         * include/bits/stl_relops.h: Same.
1813         * include/backward/auto_ptr.h: Same.
1814         * libsupc++/initializer_list: Same.
1816         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1817         Adjust line numbers.
1818         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
1819         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1820         Same.
1821         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1822         Same.
1824 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1826         * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
1827         to $(toplevel_srcdir)/libgcc.
1828         * configure: Regenerate.
1830 2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
1832         * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
1833         imagedata.
1834         * doc/xml/manual/test_policy_data_structures.xml: Same.
1835         * doc/xml/manual/policy_data_structures.xml: Same.
1837         * doc/Makefile.am (stamp-html-docbook-images)
1838         (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
1839         (xml_extra): Add lwg html file dependencies.
1840         (xml_images): Add image html file dependencies.
1841         * doc/Makefile.in: Regenerate.
1842         (stamp-html): Change to stamp-html-docbook-data.
1843         (stamp-html-copy): Remove.
1845 2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
1847         * src/atomic.cc: Use noexcept.
1848         * include/std/atomic: Likewise.
1849         * include/bits/atomic_0.h: Likewise.
1850         * include/bits/atomic_2.h: Likewise.
1851         * include/bits/atomic_base.h: Likewise.
1853 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1855         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
1856         unistd.h for unlink.
1857         * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
1858         * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
1859         * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
1860         * testsuite/performance/27_io/fstream_seek_write.cc: Same.
1861         * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
1862         * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
1863         * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
1864         * testsuite/performance/27_io/filebuf_sputc.cc: Same.
1866 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1868         * include/std/tuple: Mark more constructors constexpr.
1869         * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
1870         * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
1871         * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
1872         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1874 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1875             François Dumont  <francois.cppdevs@free.fr>
1877         * testsuite/23_containers/array/at_neg.cc: Move...
1878         * testsuite/23_containers/array/at.cc: ...here. Remove
1879         -fno-exceptions, call const at member function.
1881 2011-08-01  H.J. Lu  <hongjiu.lu@intel.com>
1883         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
1885 2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
1887         PR c++/49813
1888         * include/c_global/cmath (isinf): Remove workaround.
1890 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
1892         PR libstdc++/49925
1893         * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
1894         with std::.
1895         * include/bits/shared_ptr_base.h (__make_shared): Likewise.
1897 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1899         * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
1900         * doc/xml/manual/policy_data_structures.xml: Same.
1902         * doc/xml/class.txml: Remove biblioid.
1903         * doc/xml/manual/allocator.xml: Same.
1904         * doc/xml/manual/ctype.xml: Same.
1905         * doc/xml/manual/codecvt.xml: Same.
1906         * doc/xml/manual/backwards_compatibility.xml: Same.
1907         * doc/xml/manual/abi.xml: Same.
1908         * doc/xml/manual/shared_ptr.xml: Same.
1909         * doc/xml/manual/using_exceptions.xml: Same.
1910         * doc/xml/manual/messages.xml: Same.
1912 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1914         Docbook conversion of existing ext/pb_ds documentation.
1915         * doc/Makefile.am (xml_sources_manual): Add
1916         policy_data_structures.xml and
1917         test_policy_data_structures.xml.
1918         (stamp-html-copy): Remove special-case for ext/pb_ds directory.
1919         (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
1920         * doc/Makefile.in: Regenerate.
1921         * doc/xml/manual/policy_data_structures.xml: New, adapted from
1922           previous html-only instance in doc/html/ext/pb_ds.
1923         * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
1925         * doc/xml/spine.xml: Update copyright.
1926         * doc/xml/manual/spine.xml: Same.
1927         * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
1928         * doc/xml/manual/bitmap_allocator.xml: Same.
1929         * doc/xml/manual/mt_allocator.xml: Same.
1931         Populate image directory.
1932         * doc/xml/images/(pbds_balls_and_bins.png,
1933         pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
1934         pbds_binary_priority_queue_random_int_push_timing_test_local.png,
1935         pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
1936         pbds_cc_hash_random_int_find_timing_test_local.pdf,
1937         pbds_cc_hash_random_int_find_timing_test_local.png,
1938         pbds_cc_hash_random_int_find_timing_test_local.svg,
1939         pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
1940         pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
1941         pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
1942         pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
1943         pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
1944         pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
1945         pbds_container_tag_hierarchy.pdf,
1946         pbds_container_tag_hierarchy.png,
1947         pbds_container_tag_hierarchy.svg,
1948         pbds_different_underlying_dss_1.png,
1949         pbds_different_underlying_dss_2.png,
1950         pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
1951         pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
1952         pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
1953         pbds_gp_hash_random_int_find_timing_test_local.pdf,
1954         pbds_gp_hash_random_int_find_timing_test_local.png,
1955         pbds_gp_hash_random_int_find_timing_test_local.svg,
1956         pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
1957         pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
1958         pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
1959         pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
1960         pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
1961         pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
1962         pbds_hash_policy_cd.png,
1963         pbds_hash_random_int_erase_mem_usage_test_local.pdf,
1964         pbds_hash_random_int_erase_mem_usage_test_local.png,
1965         pbds_hash_random_int_erase_mem_usage_test_local.svg,
1966         pbds_hash_ranged_hash_range_hashing_fns.png,
1967         pbds_hash_range_hashing_seq_diagram2.png,
1968         pbds_hash_range_hashing_seq_diagram.png,
1969         pbds_hash_zlob_random_int_find_timing_test_local.pdf,
1970         pbds_hash_zlob_random_int_find_timing_test_local.png,
1971         pbds_hash_zlob_random_int_find_timing_test_local.svg,
1972         pbds_insert_resize_sequence_diagram1.png,
1973         pbds_insert_resize_sequence_diagram2.png,
1974         pbds_insert_resize_sequence_diagram3.png,
1975         pbds_invalidation_guarantee_erase.png,
1976         pbds_invalidation_tag_hierarchy.pdf,
1977         pbds_invalidation_tag_hierarchy.png,
1978         pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
1979         pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
1980         pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
1981         pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
1982         pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
1983         pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
1984         pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
1985         pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
1986         pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
1987         pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
1988         pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
1989         pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
1990         pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
1991         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
1992         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1993         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
1994         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
1995         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1996         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
1997         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
1998         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1999         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
2000         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
2001         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
2002         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
2003         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
2004         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
2005         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
2006         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
2007         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
2008         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
2009         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
2010         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
2011         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
2012         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
2013         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
2014         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
2015         pbds_node_invariants.png,
2016         pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
2017         pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
2018         pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
2019         pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
2020         pbds_pairing_priority_queue_text_push_timing_test_local.png,
2021         pbds_pairing_priority_queue_text_push_timing_test_local.svg,
2022         pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
2023         pbds_point_iterators_range_ops_1.png,
2024         pbds_point_iterators_range_ops_2.png,
2025         pbds_priority_queue_different_underlying_dss.png,
2026         pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
2027         pbds_priority_queue_random_int_push_pop_timing_test_local.png,
2028         pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
2029         pbds_priority_queue_random_int_push_timing_test_local.pdf,
2030         pbds_priority_queue_random_int_push_timing_test_local.png,
2031         pbds_priority_queue_random_int_push_timing_test_local.svg,
2032         pbds_priority_queue_tag_hierarchy.pdf,
2033         pbds_priority_queue_tag_hierarchy.png,
2034         pbds_priority_queue_tag_hierarchy.svg,
2035         pbds_priority_queue_text_join_timing_test_local.pdf,
2036         pbds_priority_queue_text_join_timing_test_local.png,
2037         pbds_priority_queue_text_join_timing_test_local.svg,
2038         pbds_priority_queue_text_modify_down_timing_test_local.pdf,
2039         pbds_priority_queue_text_modify_down_timing_test_local.png,
2040         pbds_priority_queue_text_modify_down_timing_test_local.svg,
2041         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
2042         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
2043         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
2044         pbds_priority_queue_text_modify_up_timing_test_local.pdf,
2045         pbds_priority_queue_text_modify_up_timing_test_local.png,
2046         pbds_priority_queue_text_modify_up_timing_test_local.svg,
2047         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
2048         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
2049         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
2050         pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
2051         pbds_priority_queue_text_pop_mem_usage_test_local.png,
2052         pbds_priority_queue_text_pop_mem_usage_test_local.svg,
2053         pbds_priority_queue_text_push_pop_timing_test_local.pdf,
2054         pbds_priority_queue_text_push_pop_timing_test_local.png,
2055         pbds_priority_queue_text_push_pop_timing_test_local.svg,
2056         pbds_priority_queue_text_push_timing_test_local.pdf,
2057         pbds_priority_queue_text_push_timing_test_local.png,
2058         pbds_priority_queue_text_push_timing_test_local.svg,
2059         pbds_rationale_null_node_updator.png,
2060         pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
2061         pbds_simple_list.png,
2062         pbds_text_find_timing_test_hash_local.pdf,
2063         pbds_text_find_timing_test_hash_local.png,
2064         pbds_text_find_timing_test_hash_local.svg,
2065         pbds_text_find_timing_test_tree_like_local.pdf,
2066         pbds_text_find_timing_test_tree_like_local.png,
2067         pbds_text_find_timing_test_tree_like_local.svg,
2068         pbds_tree_node_invalidations.png,
2069         pbds_tree_node_invariants.png,
2070         pbds_tree_node_updator_policy_cd.png,
2071         pbds_tree_order_statistics_timing_test_local.pdf,
2072         pbds_tree_order_statistics_timing_test_local.png,
2073         pbds_tree_order_statistics_timing_test_local.svg,
2074         pbds_tree_split_join_timing_test_local.pdf,
2075         pbds_tree_split_join_timing_test_local.png,
2076         pbds_tree_split_join_timing_test_local.svg,
2077         pbds_tree_text_insert_timing_test_node_tree_local.pdf,
2078         pbds_tree_text_insert_timing_test_node_tree_local.png,
2079         pbds_tree_text_insert_timing_test_node_tree_local.svg,
2080         pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
2081         pbds_tree_text_insert_timing_test_pat_trie_local.png,
2082         pbds_tree_text_insert_timing_test_pat_trie_local.svg,
2083         pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
2084         pbds_tree_text_insert_timing_test_vector_tree_local.png,
2085         pbds_tree_text_insert_timing_test_vector_tree_local.svg,
2086         pbds_tree_text_lor_find_timing_test_local.pdf,
2087         pbds_tree_text_lor_find_timing_test_local.png,
2088         pbds_tree_text_lor_find_timing_test_local.svg,
2089         pbds_trie_node_updator_policy_cd.png,
2090         pbds_update_seq_diagram.png): Add.
2092         * doc/html/ext/pb_ds: Remove.
2093         * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
2094         assoc_container_tag_cd.svg, assoc_container_traits.html,
2095         assoc_design.html, assoc_examples.html,
2096         associative_container_tag.html, assoc_performance_tests.html,
2097         assoc_regression_tests.html, assoc_tests.html,
2098         balls_and_bins.png, basic_hash_table.html,
2099         basic_hash_tag.html, basic_invalidation_guarantee.html,
2100         basic_tree_assoc_container_const_node_iterator.html,
2101         basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
2102         binary_priority_queue_random_int_push_timing_test_gcc.png,
2103         binary_priority_queue_random_int_push_timing_test_local.png,
2104         binary_priority_queue_random_int_push_timing_test_msvc.png,
2105         binomial_heap_tag.html,
2106         ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
2107         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
2108         ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
2109         cc_hash_max_collision_check_resize_trigger.html,
2110         cc_hash_random_int_find_timing_test_gcc.png,
2111         cc_hash_random_int_find_timing_test_local.png,
2112         cc_hash_random_int_find_timing_test_msvc.png,
2113         cc_hash_random_int_subscript_timing_test_find_gcc.png,
2114         cc_hash_random_int_subscript_timing_test_find_local.png,
2115         cc_hash_random_int_subscript_timing_test_find_msvc.png,
2116         cc_hash_random_int_subscript_timing_test_insert_gcc.png,
2117         cc_hash_random_int_subscript_timing_test_insert_local.png,
2118         cc_hash_random_int_subscript_timing_test_insert_msvc.png,
2119         cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
2120         concepts.html, contact.html, container_base.html,
2121         container_cd.png, container_cd.svg, container_tag.html,
2122         counter_lu_policy.html, design.html,
2123         different_underlying_dss.png, direct_mask_range_hashing.html,
2124         direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
2125         embedded_lists_1.png, embedded_lists_2.png,
2126         embedded_lists_3.png, examples.html, exceptions.html,
2127         gp_hash_random_int_find_timing_test_gcc.png,
2128         gp_hash_random_int_find_timing_test_local.png,
2129         gp_hash_random_int_find_timing_test_msvc.png,
2130         gp_hash_random_int_subscript_timing_test_find_gcc.png,
2131         gp_hash_random_int_subscript_timing_test_find_local.png,
2132         gp_hash_random_int_subscript_timing_test_find_msvc.png,
2133         gp_hash_random_int_subscript_timing_test_insert_gcc.png,
2134         gp_hash_random_int_subscript_timing_test_insert_local.png,
2135         gp_hash_random_int_subscript_timing_test_insert_msvc.png,
2136         gp_hash_table.html, gp_hash_tag.html,
2137         hash_based_containers.html, hash_exponential_size_policy.html,
2138         hash_load_check_resize_trigger.html, hash_policy_cd.png,
2139         hash_prime_size_policy.html,
2140         hash_random_int_erase_mem_usage_test_gcc.png,
2141         hash_random_int_erase_mem_usage_test.html,
2142         hash_random_int_erase_mem_usage_test_local.png,
2143         hash_random_int_erase_mem_usage_test_msvc.png,
2144         hash_random_int_find_find_timing_test.html,
2145         hash_random_int_subscript_find_timing_test.html,
2146         hash_random_int_subscript_insert_timing_test.html,
2147         hash_ranged_hash_range_hashing_fns.png,
2148         hash_range_hashing_seq_diagram2.png,
2149         hash_range_hashing_seq_diagram.png,
2150         hash_standard_resize_policy.html,
2151         hash_text_find_find_timing_test.html,
2152         hash_zlob_random_int_find_find_timing_test.html,
2153         hash_zlob_random_int_find_timing_test_gcc.png,
2154         hash_zlob_random_int_find_timing_test_local.png,
2155         hash_zlob_random_int_find_timing_test_msvc.png, index.html,
2156         insert_error.html, insert_resize_sequence_diagram1.png,
2157         insert_resize_sequence_diagram2.png,
2158         insert_resize_sequence_diagram3.png, interface.html,
2159         introduction.html, invalidation_guarantee_cd.png,
2160         invalidation_guarantee_erase.png, join_error.html,
2161         linear_probe_fn.html, list_update.html, list_update_tag.html,
2162         lu_based_containers.html, lu.png, misc.html, motivation.html,
2163         move_to_front_lu_policy.html,
2164         multimap_text_find_timing_test_large.html,
2165         multimap_text_find_timing_test_large_s2p_hash_gcc.png,
2166         multimap_text_find_timing_test_large_s2p_hash_local.png,
2167         multimap_text_find_timing_test_large_s2p_hash_msvc.png,
2168         multimap_text_find_timing_test_large_s2p_tree_gcc.png,
2169         multimap_text_find_timing_test_large_s2p_tree_local.png,
2170         multimap_text_find_timing_test_large_s2p_tree_msvc.png,
2171         multimap_text_find_timing_test_small.html,
2172         multimap_text_find_timing_test_small_s2p_hash_gcc.png,
2173         multimap_text_find_timing_test_small_s2p_hash_local.png,
2174         multimap_text_find_timing_test_small_s2p_hash_msvc.png,
2175         multimap_text_find_timing_test_small_s2p_tree_gcc.png,
2176         multimap_text_find_timing_test_small_s2p_tree_local.png,
2177         multimap_text_find_timing_test_small_s2p_tree_msvc.png,
2178         multimap_text_insert_mem_usage_test_large.html,
2179         multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
2180         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
2181         multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
2182         multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
2183         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
2184         multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
2185         multimap_text_insert_mem_usage_test_small.html,
2186         multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
2187         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
2188         multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
2189         multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
2190         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
2191         multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
2192         multimap_text_insert_timing_test_large.html,
2193         multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
2194         multimap_text_insert_timing_test_large_s2p_hash_local.png,
2195         multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
2196         multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
2197         multimap_text_insert_timing_test_large_s2p_tree_local.png,
2198         multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
2199         multimap_text_insert_timing_test_small.html,
2200         multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
2201         multimap_text_insert_timing_test_small_s2p_hash_local.png,
2202         multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
2203         multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
2204         multimap_text_insert_timing_test_small_s2p_tree_local.png,
2205         multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
2206         node_invariant_invalidations.png, node_invariants.png,
2207         null_hash_fn.html, null_lu_metadata.html,
2208         null_mapped_type.html, null_probe_fn.html,
2209         null_tree_node_update.html, null_trie_node_update.html,
2210         ov_tree_tag.html, pairing_heap_tag.html,
2211         pairing_priority_queue_text_push_pop_timing_test_gcc.png,
2212         pairing_priority_queue_text_push_pop_timing_test_local.png,
2213         pairing_priority_queue_text_push_pop_timing_test_msvc.png,
2214         pairing_priority_queue_text_push_timing_test_gcc.png,
2215         pairing_priority_queue_text_push_timing_test_local.png,
2216         pairing_priority_queue_text_push_timing_test_msvc.png,
2217         pat_trie.png, pat_trie_tag.html,
2218         point_invalidation_guarantee.html, point_iterators_cd.png,
2219         point_iterators_range_ops_1.png,
2220         point_iterators_range_ops_2.png, pq_container_traits.html,
2221         pq_design.html, pq_different_underlying_dss.png,
2222         pq_examples.html, pq_performance_tests.html,
2223         pq_regression_tests.html, pq_tests.html, prerequisites.html,
2224         priority_queue.html,
2225         priority_queue_random_int_push_pop_timing_test_gcc.png,
2226         priority_queue_random_int_push_pop_timing_test.html,
2227         priority_queue_random_int_push_pop_timing_test_local.png,
2228         priority_queue_random_int_push_pop_timing_test_msvc.png,
2229         priority_queue_random_int_push_timing_test_gcc.png,
2230         priority_queue_random_int_push_timing_test.html,
2231         priority_queue_random_int_push_timing_test_local.png,
2232         priority_queue_random_int_push_timing_test_msvc.png,
2233         priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
2234         priority_queue_tag.html,
2235         priority_queue_text_join_timing_test_gcc.png,
2236         priority_queue_text_join_timing_test.html,
2237         priority_queue_text_join_timing_test_local.png,
2238         priority_queue_text_join_timing_test_msvc.png,
2239         priority_queue_text_modify_down_timing_test_gcc.png,
2240         priority_queue_text_modify_down_timing_test.html,
2241         priority_queue_text_modify_down_timing_test_local.png,
2242         priority_queue_text_modify_down_timing_test_msvc.png,
2243         priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
2244         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
2245         priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
2246         priority_queue_text_modify_up_timing_test_gcc.png,
2247         priority_queue_text_modify_up_timing_test.html,
2248         priority_queue_text_modify_up_timing_test_local.png,
2249         priority_queue_text_modify_up_timing_test_msvc.png,
2250         priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
2251         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
2252         priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
2253         priority_queue_text_pop_mem_usage_test_gcc.png,
2254         priority_queue_text_pop_mem_usage_test.html,
2255         priority_queue_text_pop_mem_usage_test_local.png,
2256         priority_queue_text_pop_mem_usage_test_msvc.png,
2257         priority_queue_text_push_pop_timing_test_gcc.png,
2258         priority_queue_text_push_pop_timing_test.html,
2259         priority_queue_text_push_pop_timing_test_local.png,
2260         priority_queue_text_push_pop_timing_test_msvc.png,
2261         priority_queue_text_push_timing_test_gcc.png,
2262         priority_queue_text_push_timing_test.html,
2263         priority_queue_text_push_timing_test_local.png,
2264         priority_queue_text_push_timing_test_msvc.png,
2265         PythonPoweredSmall.gif quadratic_probe_fn.html,
2266         random_int_find_find_timing_test_tree_gcc.png,
2267         random_int_find_find_timing_test_tree_local.png,
2268         random_int_find_find_timing_test_tree_msvc.png,
2269         range_invalidation_guarantee.html,
2270         rationale_null_node_updator.png, rb_tree_tag.html,
2271         rc_binomial_heap_tag.html, references.html, resize_error.html,
2272         resize_policy_cd.png, restoring_node_invariants.png,
2273         sample_probe_fn.html, sample_ranged_hash_fn.html,
2274         sample_ranged_probe_fn.html, sample_range_hashing.html,
2275         sample_resize_policy.html, sample_resize_trigger.html,
2276         sample_size_policy.html, sample_tree_node_update.html,
2277         sample_trie_access_traits.html, sample_trie_node_update.html,
2278         sample_update_policy.html, simple_list.png,
2279         splay_tree_tag.html, tests.html,
2280         text_find_timing_test_hash_gcc.png,
2281         text_find_timing_test_hash_local.png,
2282         text_find_timing_test_hash_msvc.png,
2283         text_find_timing_test_tree_like_gcc.png,
2284         text_find_timing_test_tree_like_local.png,
2285         text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
2286         tree_based_containers.html, tree.html,
2287         tree_node_iterator.html, tree_node_updator_policy_cd.png,
2288         tree_order_statistics_node_update.html,
2289         tree_order_statistics_timing_test_gcc.png,
2290         tree_order_statistics_timing_test.html,
2291         tree_order_statistics_timing_test_local.png,
2292         tree_order_statistics_timing_test_msvc.png,
2293         tree_random_int_find_find_timing_test.html,
2294         tree_split_join_timing_test_gcc.png,
2295         tree_split_join_timing_test.html,
2296         tree_split_join_timing_test_local.png,
2297         tree_split_join_timing_test_msvc.png, tree_tag.html,
2298         tree_text_find_find_timing_test.html,
2299         tree_text_insert_timing_test.html,
2300         tree_text_insert_timing_test_node_tree_gcc.png,
2301         tree_text_insert_timing_test_node_tree_local.png,
2302         tree_text_insert_timing_test_node_tree_msvc.png,
2303         tree_text_insert_timing_test_pat_trie_gcc.png,
2304         tree_text_insert_timing_test_pat_trie_local.png,
2305         tree_text_insert_timing_test_pat_trie_msvc.png,
2306         tree_text_insert_timing_test_vector_tree_gcc.png,
2307         tree_text_insert_timing_test_vector_tree_local.png,
2308         tree_text_insert_timing_test_vector_tree_msvc.png,
2309         tree_text_lor_find_find_timing_test.html,
2310         tree_text_lor_find_timing_test_gcc.png,
2311         tree_text_lor_find_timing_test_local.png,
2312         tree_text_lor_find_timing_test_msvc.png,
2313         trie_based_containers.html, trie_const_node_iterator.html,
2314         trie.html, trie_node_iterator.html,
2315         trie_node_updator_policy_cd.png,
2316         trie_order_statistics_node_update.html,
2317         trie_prefix_search_node_update.html,
2318         trie_string_access_traits.html, trie_tag.html,
2319         trivial_iterator_tag.html, tutorial.html,
2320         update_policy_cd.png, update_seq_diagram.png): Remove.
2322 2011-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2324         PR c++/49813
2325         * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
2327 2011-07-27  Jeffrey Yasskin  <jyasskin@google.com>
2329         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
2331 2011-07-25  Benjamin Kosnik  <bkoz@redhat.com>
2333         * include/std/array (at): Remove constexpr when -fno-exceptions.
2334         * testsuite/23_containers/array/at_neg.cc: Test.
2336 2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
2337             Nathan Ridge  <zeratul976@hotmail.com>
2339         PR libstdc++/49836
2340         * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
2341         Declare.
2342         (vector<>::push_back(const value_type&)): Use it.
2343         * include/bits/vector.tcc: Define.
2344         (vector<>::emplace_back(_Args&&...)): Use it.
2345         * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
2346         Add.
2347         * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
2348         * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
2349         Likewise.
2350         * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
2351         Likewise.
2352         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2353         Adjust dg-error line number.
2354         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2355         Likewise.
2356         * testsuite/23_containers/vector/requirements/dr438/
2357         constructor_1_neg.cc: Likewise.
2358         * testsuite/23_containers/vector/requirements/dr438/
2359         constructor_2_neg.cc: Likewise.
2361 2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
2363         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
2364         _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
2366 2011-07-24  François Dumont  <francois.cppdevs@free.fr>
2368         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
2369         __builtin_floor rather than __builtin_ceil to compute next resize
2370         value.
2371         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
2372         New.
2374 2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
2375             Daniel Krugler  <daniel.kruegler@googlemail.com>
2377         * include/bits/move.h (move, forward): Mark constexpr.
2378         * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
2379         * testsuite/20_util/pair/make_pair/constexpr.cc: New.
2380         * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
2382 2011-07-22  Ian Lance Taylor  <iant@google.com>
2384         * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
2385         * Makefile.in: Rebuild.
2386         * doc/Makefile.in: Rebuild.
2387         * include/Makefile.in: Rebuild.
2388         * libsupc++/Makefile.in: Rebuild.
2389         * po/Makefile.in: Rebuild.
2390         * python/Makefile.in: Rebuild.
2391         * src/Makefile.in: Rebuild.
2392         * testsuite/Makefile.in: Rebuild.
2394 2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>
2396         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
2397         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
2398         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
2399         * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
2400         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
2401         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
2402         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
2403         * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
2405         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
2406         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
2407         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
2408         * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
2409         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
2410         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
2411         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
2412         * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
2414         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
2415         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
2416         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2417         Move...
2418         * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
2419         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
2420         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
2421         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2422         Move...
2423         * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
2425         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
2426         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
2427         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
2428         * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
2430         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
2431         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
2432         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
2433         * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
2435 2011-07-21  François Dumont  <francois.cppdevs@free.fr>
2437         * include/debug/safe_unordered_sequence.h,
2438         safe_unordered_sequence.tcc: Rename respectively in...
2439         * include/debug/safe_unordered_container.h,
2440         safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
2441         rename _Safe_unordered_container.
2442         * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
2443         rename _Safe_unordered_container_base.
2444         * include/debug/unordered_map, unordered_set: Adapt to previous
2445         modifications.
2446         * config/abi/pre/gnu.ver: Likewise.
2447         * src/debug.cc: Likewise.
2448         * include/Makefile.am: Likewise.
2449         * include/Makefile.in: Regenerate.
2451 2011-07-21  Paolo Carlini  <paolo.carlini@oracle.com>
2453         * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
2454         to use steady_clock instead of monotonic_clock.
2455         * config/abi/pre/gnu.ver: Export steady_clock::now.
2457 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2458             Daniel Krugler  <daniel.kruegler@googlemail.com>
2460         * include/std/array (array::at, array::operator[]): Mark constexpr.
2461         * testsuite/23_containers/array/requirements/
2462         constexpr_element_access.cc: Add.
2464 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2465             Daniel Krugler  <daniel.kruegler@googlemail.com>
2467         * include/std/chrono: (system_clock::is_steady): Update to N3291
2468         from is_monotonic.
2469         (time_point): Mark nonmember arithmetic operators constexpr.
2470         * src/chrono.cc: Modify for above.
2471         * src/compatibility-c++0x.cc: Same.
2472         * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
2473         * testsuite/20_util/time_point/1.cc: Modify.
2474         * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
2475         * testsuite/20_util/system_clock/1.cc: Modify.
2476         * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
2477         * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
2478         * testsuite/30_threads/condition_variable/members/2.cc: Modify.
2479         * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
2481 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2483         * include/std/system_error: Use noexcept.
2484         * src/system_error.cc: Likewise.
2485         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
2486         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
2487         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
2488         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
2489         * testsuite/util/testsuite_error.h: Likewise.
2491         * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
2492         Use enable_if on template parameter default.
2493         (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
2495 2011-07-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
2497         * include/precompiled/stdc++.h: Add scoped_allocator.
2499 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2501         * include/std/bitset (operator[]): Make constexpr.
2502         * testsuite/23_containers/bitset/operations/constexpr.cc: New.
2504 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2506         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
2507         _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
2508         Fix typo.
2510 2011-07-19  François Dumont  <francois.cppdevs@free.fr>
2512         * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
2513         safe_unordered_sequence.tcc, safe_local_iterator.h,
2514         safe_local_iterator.tcc: New, support for unordered sequence safe
2515         local iterators.
2516         * include/Makefile.am: Add previous files.
2517         * include/Makefile.in: Regenerate.
2518         * include/debug/unordered_map, unordered_set: Implement
2519         _Safe_unordered_sequence and expose _Safe_local_iterator.
2520         * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
2521         _Safe_iterator::_M_get_distance static method to expose it as
2522         __get_distance function and use it in _Safe_local_iterator type.
2523         * include/debug/formatter.h: Add __msg_local_iter_compare_bad
2524         _Debug_msg_id enum entry to notify invalid comparison between local
2525         iterators from different buckets. Add _Parameter constructor from
2526         _Safe_local_iterator.
2527         * include/debug/functions.h: Add __valid_range overload for
2528         _Safe_local_iterator.
2529         * src/debug.cc: Add _Safe_unordered_sequence_base and
2530         _Safe_local_iterator_base methods implementations.
2531         * config/abi/pre/gnu.ver: Add export of some
2532         _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
2533         * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
2534         simulate use of a singular iterator.
2535         * testsuite/util/debug/unordered_checks.h: New, several functions
2536         to simulate classic invalid usage of unordered sequence local
2537         iterators.
2538         * testsuite/23_containers/unordered_map/debug/
2539         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2540         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2541         invalid_local_iterator_compare_neg.cc: New.
2542         * testsuite/23_containers/unordered_multimap/debug/
2543         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2544         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2545         invalid_local_iterator_compare_neg.cc: New.
2546         * testsuite/23_containers/unordered_set/debug/
2547         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2548         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2549         invalid_local_iterator_compare_neg.cc: New.
2550         * testsuite/23_containers/unordered_multiset/debug/
2551         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2552         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2553         invalid_local_iterator_compare_neg.cc: New.
2555 2011-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
2557         PR libstdc++/48430
2558         * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
2559         __hash_base.
2560         * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
2562 2011-07-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2564         * crossconfig.m4 (*-netware): Remove.
2565         * configure: Regenerate.
2567 2011-07-15  Yufeng Zhang  <yufeng.zhang@arm.com>
2569         * config/locale/newlib/ctype_members.cc: New file.
2570         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
2571         kind: newlib.  Configure to use the newlib specific
2572         ctype_members.cc when with_newlib is enabled.
2573         * configure: Regenerate.
2575 2011-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
2576             Jakub Jelinek  <jakub@redhat.com>
2578         PR libstdc++/49745
2579         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
2580         _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
2581         * libsupc++/guard.cc: Include <unistd.h>.
2582         * testsuite/17_intro/headers/c++1998/49745.cc: New.
2583         * configure: Regenerate.
2584         * config.h.in: Likewise.
2586 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2588         PR libstdc++/49559
2589         * include/bits/stl_algo.h (__move_merge_backward): Remove.
2590         (__move_merge_adaptive, __move_merge_adaptive_backward): New.
2591         (__merge_adaptive): Use the latter two.
2592         (__rotate_adaptive): Avoid self move-assignment.
2593         * include/bits/stl_algobase.h (move_backward): Fix comment.
2594         * testsuite/25_algorithms/stable_sort/49559.cc: New.
2595         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
2596         * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
2597         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
2598         * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
2599         (rvalstruct&&)): Check for self move-assignment.
2601 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2603         * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
2604         operator=(const propagating_allocator<>&)): Retun *this.
2606 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2608         * include/Makefile.am: Add new header.
2609         * include/Makefile.in: Regenerate.
2610         * include/std/scoped_allocator: New.
2611         * doc/xml/manual/status_cxx200x.xml: Update.
2612         * testsuite/20_util/scoped_allocator/1.cc: New.
2613         * testsuite/20_util/scoped_allocator/propagation.cc: New.
2614         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
2615         * testsuite/20_util/scoped_allocator/requirements/
2616         explicit_instantiation.cc: New.
2618 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2620         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
2621         * include/bits/vector.tcc: Likewise.
2622         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
2623         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
2624         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
2625         * testsuite/23_containers/vector/allocator/copy.cc: New.
2626         * testsuite/23_containers/vector/allocator/swap.cc: New.
2627         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
2628         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2629         Adjust dg-error line numbers.
2630         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2631         Likewise.
2632         * testsuite/23_containers/vector/requirements/dr438/
2633         constructor_1_neg.cc: Likewise.
2634         * testsuite/23_containers/vector/requirements/dr438/
2635         constructor_2_neg.cc: Likewise.
2637 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2639         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
2640         trait, provide partial specializations for known allocators.
2641         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
2642         non-standard pointer types.
2643         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
2644         (__alloc_traits::_S_nothrow_move): Likewise.
2645         (__alloc_traits::_S_nothrow_swap): Likewise.
2647 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2649         * include/ext/cast.h: Fix typo in include guard.
2650         * include/ext/pointer.h (_Unqualified_type): Remove redundant
2651         partial specializations for volatile types. Fix typos in comments.
2652         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
2654 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2656         PR libstdc++/49668
2657         * include/std/functional (__bind_simple): Define.
2658         * include/std/future (_Task_setter): Parameterize by type of result
2659         pointer instead of state object.
2660         (_S_task_setter): Type deduction helper.
2661         (_Task_state): Use _S_task_setter and __bind_simple.
2662         (_Deferred_state, _Async_state): Store call wrapper directly not as
2663         std::function. Use _S_task_setter and __bind_simple.
2664         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
2665         (async): Use new functions and __bind_simple.
2666         * include/std/mutex (call_once): Use __bind_simple.
2667         * include/std/thread (thread): Likewise. Remove unused headers.
2668         * src/thread.cc: Add header.
2669         * testsuite/30_threads/async/49668.cc: New.
2670         * testsuite/30_threads/call_once/49668.cc: New.
2671         * testsuite/30_threads/thread/cons/49668.cc: New.
2672         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
2674 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2676         * configure.host (abi_baseline_subdir_switch): Describe.
2677         Provide default.
2678         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
2679         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
2680         baseline_subdir_switch.
2681         * testsuite/Makefile.am (site.exp): Emit it.
2682         (baseline_subdir): Use it.
2683         * testsuite/libstdc++-abi/abi.exp: Use it.
2684         * configure: Regenerate.
2685         * Makefile.in: Regenerate.
2686         * doc/Makefile.in: Regenerate.
2687         * include/Makefile.in: Regenerate.
2688         * libsupc++/Makefile.in: Regenerate.
2689         * po/Makefile.in: Regenerate.
2690         * python/Makefile.in: Regenerate.
2691         * src/Makefile.in: Regenerate.
2692         * testsuite/Makefile.in: Regenerate.
2694 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
2696         * include/debug/set.h, unordered_map, multiset.h, forward_list,
2697         unordered_set, vector, deque, string, list, multimap.h: Remove
2698         base class default constructor calls.
2699         * include/debug/map.h: Likewise and cleanup several redefinition of
2700         base iterator typedef.
2702 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
2704         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
2705         thrown object here.  Return succeded_with_ptr_to_base for all
2706         pointer cases.
2708 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
2710         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
2711         C++0x mode.
2712         * testsuite/25_algorithms/sort/35588.cc: Likewise.
2713         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
2715 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2717         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
2719 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2721         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
2722         warning.
2724 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2726         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
2727         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
2728         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
2729         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
2730         Likewise.
2731         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2732         * testsuite/20_util/bind/socket.cc: Likewise.
2733         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
2734         * testsuite/util/testsuite_random.h: Likewise.
2736 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2738         * include/Makefile.am: Add alloc_traits.h headers.
2739         * include/Makefile.in: Regenerate.
2740         * include/std/memory: Include uses_allocator.h explicitly.
2741         * include/bits/allocator.h (allocator_traits): Move to ...
2742         * include/bits/alloc_traits.h: New header.
2743         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
2744         a common allocator interface for C++98 and C++0x.
2745         * include/bits/stl_construct.h: Use __alloc_traits.
2746         * include/bits/stl_uninitialized.h: Likewise.
2748 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
2749             Paolo Carlini  <paolo.carlini@oracle.com>
2751         * include/bits/move.h (__is_nothrow_swappable): Add.
2752         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
2753         * include/bits/algorithmfwd.h: Adjust.
2754         * testsuite/25_algorithms/swap/noexcept.cc: New.
2756 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
2758         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
2759         check-DEJAGNUnormal[4-9].
2760         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
2761         * testsuite/Makefile.in: Regenerated.
2763 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
2764             Paolo Carlini  <paolo.carlini@oracle.com>
2766         * include/std/tuple (__conv_types, __one_by_one_convertible,
2767         __all_convertible): Add.
2768         (tuple): Use the latter.
2769         (tuple<_T1>): Remove.
2770         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
2771         line number.
2772         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2774 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2776         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
2777         noexcept.
2779 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2781         * include/std/valarray (~valarray): Use noexcept.
2782         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
2783         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
2784         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
2785         Likewise.
2786         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
2787         Likewise.
2788         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
2789         Likewise.
2791 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2793         * include/std/functional: Use noexcept.
2794         * include/bits/stl_tempbuf.h: Likewise.
2796 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
2797             Paolo Carlini  <paolo.carlini@oracle.com>
2799         * include/bits/allocator.h (__shrink_to_fit): Rename to
2800         __shrink_to_fit_aux, fix.
2801         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
2802         (shrink_to_fit): Use the latter.
2803         * include/debug/vector (shrink_to_fit): Likewise.
2804         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
2805         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
2806         (shrink_to_fit): Use the latter.
2807         * include/debug/deque (shrink_to_fit): Likewise.
2808         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
2809         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
2810         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
2811         (shrink_to_fit): Use the latter.
2812         (reserve): Use _M_reallocate, move inline.
2813         (_Bvector_base<>::_S_nword): Add, use it throughout.
2814         * include/debug/string (shrink_to_fit): Redo.
2815         * include/ext/vstring.h (shrink_to_fit): Optimize.
2816         * include/bits/basic_string.h (shrink_to_fit): Likewise.
2817         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
2818         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
2819         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
2820         Likewise.
2821         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
2822         Likewise.
2823         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
2825 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2827         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
2828         mode by overloading to take allocator's pointer type.
2829         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
2830         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
2831         2.cc: New.
2833 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2835         * testsuite/20_util/allocator_traits/requirements/
2836         explicit_instantiation.cc: Add another instantiation.
2838 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2840         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
2841         for allocator_type and value_type.
2843 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2845         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
2846         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
2848 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
2850         * include/ext/throw_allocator.h: Use noexcept.
2851         * include/ext/pool_allocator.h: Likewise.
2852         * include/ext/bitmap_allocator.h: Likewise.
2853         * include/ext/new_allocator.h: Likewise.
2854         * include/ext/malloc_allocator.h: Likewise.
2855         * include/ext/array_allocator.h: Likewise.
2856         * include/ext/mt_allocator.h: Likewise.
2857         * include/ext/extptr_allocator.h: Likewise.
2858         * testsuite/util/testsuite_allocator.h: Likewise; do not include
2859         <cassert> directly, include <testsuite_hooks.h> instead.
2861 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
2863         * include/ext/pb_ds/*: Doxygen markup redo.
2864         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
2865         * include/Makefile.in: Regenerate.
2867 2011-06-10  Jason Merrill  <jason@redhat.com>
2869         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
2871         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
2872         fix dg-error markup.
2874 2011-06-09  Jason Merrill  <jason@redhat.com>
2876         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
2878         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
2879         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
2880         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2881         * testsuite/20_util/forward/1_neg.cc: Likewise.
2882         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
2883         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2884         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
2885         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
2886         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
2887         Likewise.
2888         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
2889         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
2890         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
2891         Likewise.
2892         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
2893         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
2894         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2895         Likewise.
2896         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2897         auto_ptr_rvalue_neg.cc: Likewise.
2898         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2899         Likewise.
2900         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2901         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2902         Likewise.
2903         * testsuite/23_containers/deque/requirements/dr438/
2904         constructor_1_neg.cc: Likewise.
2905         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2906         Likewise.
2907         * testsuite/23_containers/forward_list/requirements/dr438/
2908         assign_neg.cc: Likewise.
2909         * testsuite/23_containers/forward_list/requirements/dr438/
2910         constructor_1_neg.cc: Likewise.
2911         * testsuite/23_containers/forward_list/requirements/dr438/
2912         constructor_2_neg.cc: Likewise.
2913         * testsuite/23_containers/forward_list/requirements/dr438/
2914         insert_neg.cc: Likewise.
2915         * testsuite/23_containers/list/requirements/dr438/
2916         assign_neg.cc: Likewise.
2917         * testsuite/23_containers/list/requirements/dr438/
2918         constructor_1_neg.cc: Likewise.
2919         * testsuite/23_containers/list/requirements/dr438/
2920         constructor_2_neg.cc: Likewise.
2921         * testsuite/23_containers/list/requirements/dr438/
2922         insert_neg.cc: Likewise.
2923         * testsuite/23_containers/vector/requirements/dr438/
2924         assign_neg.cc: Likewise.
2925         * testsuite/23_containers/vector/requirements/dr438/
2926         constructor_1_neg.cc: Likewise.
2927         * testsuite/23_containers/vector/requirements/dr438/
2928         constructor_2_neg.cc: Likewise.
2929         * testsuite/23_containers/vector/requirements/dr438/
2930         insert_neg.cc: Likewise.
2931         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
2932         * testsuite/29_atomics/atomic_integral/operators/
2933         bitwise_neg.cc: Likewise.
2934         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2935         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
2936         * testsuite/decimal/operator_neg.cc: Likewise.
2938 2011-06-09  Simon Baldwin  <simonb@google.com>
2940         * scripts/extract_symvers.in: Handle processor/OS specific or
2941         unknown symbol binding strings from readelf.
2943 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
2945         * include/std/type_traits (__is_copy_assignable_impl,
2946         __is_nt_copy_assignable_impl): Fix typo.
2948 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2950         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
2951         instead of <limits>.
2952         * include/bits/allocator.h: Likewise.
2954         * include/std/chrono (duration_values<>::min): Call lowest, not min.
2956 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2958         * include/bits/allocator.h (__shrink_to_fit): Simplify.
2959         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
2960         * include/bits/stl_deque.h: Likewise.
2961         * include/bits/stl_bvector.h: Likewise.
2963 2011-06-07  Jason Merrill  <jason@redhat.com>
2965         * testsuite/lib/prune.exp: s/required/instantiated/.
2966         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2967         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
2968         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2969         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2970         * testsuite/20_util/forward/1_neg.cc: Likewise.
2971         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
2972         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2973         Likewise.
2974         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2975         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2976         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
2977         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
2978         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
2979         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
2980         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2981         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2982         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2983         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2984         shared_ptr_neg.cc: Likewise.
2986 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2988         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
2989         (move_if_noexcept): Use the latter.
2990         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
2991         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
2992         * include/bits/stl_uninitialized.h
2993         (__uninitialized_move_if_noexcept_a): Add.
2994         * include/bits/vector.tcc (vector<>::reserve): Use
2995         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
2996         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
2997         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
2998         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
2999         Add.
3000         (copycounter::copycounter(copycounter&&)): Use noexcept.
3001         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
3002         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
3003         Likewise.
3004         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
3005         Likewise.
3007 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
3009         PR libstdc++/49293
3010         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
3011         for glibc 2.14.
3012         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
3014 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
3016         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
3018 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3020         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
3021         * include/ext/pointer.h (pointer_traits): Add partial specialization
3022         for _Pointer_adapter.
3024 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
3026         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
3027         Update to C++0x definition using type to construct as template
3028         parameter.
3029         (tracker_allocator::destroy): Likewise for type to destroy.
3030         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
3032 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
3034         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
3035         Use std::move on the allocator, use noexcept.
3036         (_Hashtable<>::~_Hashtable): Use noexcept.
3037         * include/bits/stl_list.h: Likewise.
3038         * include/bits/forward_list.h: Likewise.
3039         * include/bits/stl_vector.h: Likewise.
3040         * include/bits/stl_bvector.h: Likewise.
3041         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
3042         * include/bits/stl_set.h: Likewise.
3043         * include/bits/stl_multimap.h: Likewise.
3044         * include/bits/stl_multiset.h: Likewise.
3045         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
3046         std::move on the allocator.
3047         (_Rb_tree<>::~_Rb_tree): Use noexcept.
3048         * include/bits/stl_deque.h: Likewise.
3049         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
3050         noexcept.
3051         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
3052         * include/debug/set.h: Adjust.
3053         * include/debug/unordered_map: Likewise.
3054         * include/debug/multiset.h: Likewise.
3055         * include/debug/forward_list: Likewise.
3056         * include/debug/vector: Likewise.
3057         * include/debug/unordered_set: Likewise.
3058         * include/debug/deque: Likewise.
3059         * include/debug/map.h: Likewise.
3060         * include/debug/string: Likewise.
3061         * include/debug/list: Likewise.
3062         * include/debug/multimap.h: Likewise.
3063         * include/profile/set.h: Likewise.
3064         * include/profile/unordered_map: Likewise.
3065         * include/profile/multiset.h: Likewise.
3066         * include/profile/forward_list: Likewise.
3067         * include/profile/unordered_set: Likewise.
3068         * include/profile/vector: Likewise.
3069         * include/profile/deque: Likewise.
3070         * include/profile/map.h: Likewise.
3071         * include/profile/list: Likewise.
3072         * include/profile/multimap.h: Likewise.
3073         * testsuite/21_strings/basic_string/cons/wchar_t/
3074         noexcept_move_construct.cc: New.
3075         * testsuite/21_strings/basic_string/cons/char/
3076         noexcept_move_construct.cc: Likewise.
3077         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
3078         * testsuite/23_containers/unordered_map/cons/
3079         noexcept_move_construct.cc: Likewise.
3080         * testsuite/23_containers/multimap/cons/
3081         noexcept_move_construct.cc: Likewise.
3082         * testsuite/23_containers/set/cons/
3083         noexcept_move_construct.cc: Likewise.
3084         * testsuite/23_containers/unordered_multimap/cons/
3085         noexcept_move_construct.cc: Likewise.
3086         * testsuite/23_containers/forward_list/cons/
3087         noexcept_move_construct.cc: Likewise.
3088         * testsuite/23_containers/unordered_set/cons/
3089         noexcept_move_construct.cc: Likewise.
3090         * testsuite/23_containers/vector/bool/cons/
3091         noexcept_move_construct.cc: Likewise.
3092         * testsuite/23_containers/vector/cons/
3093         noexcept_move_construct.cc: Likewise.
3094         * testsuite/23_containers/multiset/cons/
3095         noexcept_move_construct.cc: Likewise.
3096         * testsuite/23_containers/list/cons/
3097         noexcept_move_construct.cc: Likewise.
3098         * testsuite/23_containers/unordered_multiset/cons/
3099         noexcept_move_construct.cc: Likewise.
3100         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
3101         * testsuite/23_containers/forward_list/requirements/dr438/
3102         assign_neg.cc: Adjust dg-error line numbers.
3103         * testsuite/23_containers/forward_list/requirements/dr438/
3104         insert_neg.cc: Likewise.
3105         * testsuite/23_containers/forward_list/requirements/dr438/
3106         constructor_1_neg.cc: Likewise.
3107         * testsuite/23_containers/forward_list/requirements/dr438/
3108         constructor_2_neg.cc: Likewise.
3109         * testsuite/23_containers/vector/requirements/dr438/
3110         assign_neg.cc: Likewise.
3111         * testsuite/23_containers/vector/requirements/dr438/
3112         insert_neg.cc: Likewise.
3113         * testsuite/23_containers/vector/requirements/dr438/
3114         constructor_1_neg.cc: Likewise.
3115         * testsuite/23_containers/vector/requirements/dr438/
3116         constructor_2_neg.cc: Likewise.
3117         * testsuite/23_containers/deque/requirements/dr438/
3118         assign_neg.cc: Likewise.
3119         * testsuite/23_containers/deque/requirements/dr438/
3120         insert_neg.cc: Likewise.
3121         * testsuite/23_containers/deque/requirements/dr438/
3122         constructor_1_neg.cc: Likewise.
3123         * testsuite/23_containers/deque/requirements/dr438/
3124         constructor_2_neg.cc: Likewise.
3125         * testsuite/23_containers/list/requirements/dr438/
3126         assign_neg.cc: Likewise.
3127         * testsuite/23_containers/list/requirements/dr438/
3128         insert_neg.cc: Likewise.
3129         * testsuite/23_containers/list/requirements/dr438/
3130         constructor_1_neg.cc: Likewise.
3131         * testsuite/23_containers/list/requirements/dr438/
3132         constructor_2_neg.cc: Likewise.
3134         * include/bits/move.h (swap): Use __and_ in the noexcept.
3135         * include/bits/algorithmfwd.h: Adjust.
3137 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
3139         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
3140         compare(const string&), which uses char_traits::compare, which
3141         isn't noexcept; also no noexcept in the move assignment operator
3142         and move assign, see c++std-lib-30855).
3143         * include/bits/basic_string.tcc: Likewise.
3144         * include/ext/vstring.h: Likewise.
3145         * include/ext/vstring.tcc: Likewise.
3146         * include/debug/string: Likewise.
3148 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
3150         * doc/xml/manual/status_cxx200x.xml: Update.
3151         * doc/html/*: Regenerate.
3153 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
3155         * include/std/type_traits (__or_, __and_): Add trivial definitions
3156         for a single element.
3157         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
3158         constraints.
3159         (pair<>::pair(pair&&)): Define.
3160         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
3161         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
3162         * include/std/tuple: Use __and_ in noexcept specs and constraints.
3163         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
3164         _Tuple_impl&&)): Remove noexcept.
3165         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
3166         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
3167         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
3168         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
3169         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3170         Adjust dg-error line numbers.
3171         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3172         Likewise.
3173         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3174         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
3175         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3177 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
3179         * include/std/tuple: Restore is_convertible constraint.
3180         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
3182 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
3184         PR libstdc++/49236
3185         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3186         line number.
3188 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
3190         * include/std/tuple: Implement uses-allocator construction.
3191         * include/bits/allocator.h (uses_allocator): Move to ...
3192         * include/bits/uses_allocator.h: New file.
3193         * include/Makefile.am: Add new header.
3194         * include/Makefile.in: Regenerate.
3195         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
3196         * testsuite/20_util/uses_allocator/construction.cc: New.
3197         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
3198         * testsuite/20_util/tuple/cons/allocators.cc: New.
3200 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3202         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
3204 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3206         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
3207         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
3208         * configure.ac: Use them. Increase minor version.
3209         * configure: Regenerate.
3210         * config.h.in: Regenerate.
3211         * include/std/thread (thread::hardware_concurrency): Remove inline
3212         definition.
3213         * src/thread.cc (thread::hardware_concurrency): Define.
3214         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
3215         * testsuite/util/testsuite_abi.cc: Add new version.
3216         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
3217         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
3218         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
3219         dg-require-nprocs and verify hardware_concurrency returns non-zero.
3221 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3223         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
3225 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3227         * include/Makefile.am: Add new ptr_traits.h header.
3228         * include/Makefile.in: Regenerate.
3229         * include/bits/ptr_traits.h (pointer_traits): New.
3230         * include/bits/allocator.h (allocator_traits): Add.
3231         * include/ext/array_allocator.h (construct, destroy): Update C++0x
3232         versions.
3233         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
3234         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
3235         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
3236         * include/ext/mt_allocator.h (construct, destroy): Likewise.
3237         * include/ext/new_allocator.h (construct, destroy): Likewise.
3238         * include/ext/pool_allocator.h (construct, destroy): Likewise.
3239         * include/ext/throw_allocator.h (construct, destroy): Likewise.
3240         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
3241         * testsuite/20_util/allocator_traits/requirements/
3242         explicit_instantiation.cc: New.
3243         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
3244         * testsuite/20_util/allocator_traits/members/select.cc: New.
3245         * testsuite/20_util/allocator_traits/members/construct.cc: New.
3246         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
3247         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
3248         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
3249         * testsuite/20_util/pointer_traits/requirements/
3250         explicit_instantiation.cc: New.
3252 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3254         * include/std/future (launch): Update enumerators and define
3255         operators required for bitmask type. Remove trailing whitespace.
3256         * src/future.cc: Remove trailing whitespace.
3257         * testsuite/30_threads/async/any.cc: Adjust.
3258         * testsuite/30_threads/async/sync.cc: Adjust.
3259         * testsuite/30_threads/async/launch.cc: New.
3261 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3263         * include/std/future: Use noexcept.
3264         * src/future.cc: Likewise.
3266 2011-05-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
3268         * include/std/thread (this_thread::sleep_until): Move after sleep_for.
3270 2011-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
3272         PR libstdc++/49187
3273         * include/parallel/losertree.h: Add missing using declarations
3274         of _Base::_M_comp.
3275         * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>.
3276         * include/parallel/multiway_merge.h: Include <parallel/
3277         multiseq_selection.h>, forward declare __merge_advance.
3278         * include/parallel/multiseq_selection.h: Don't include <parallel/
3279         sort.h> here.
3280         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix
3281         qualification of upper_bound.
3283         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc:
3284         Use dg-require-debug-mode.
3285         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc:
3286         Likewise.
3287         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc:
3288         Likewise.
3289         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc:
3290         Likewise.
3291         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc:
3292         Likewise.
3293         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
3294         Likewise.
3295         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
3296         Likewise.
3297         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc:
3298         Likewise.
3299         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc:
3300         Likewise.
3302         * include/parallel/algo.h: Minor uglification fixes.
3304 2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
3306         * src/list.cc: Use noexcept per the FDIS.
3307         * src/compatibility-list-2.cc: Likewise.
3308         * include/debug/set.h: Likewise.
3309         * include/debug/unordered_map: Likewise.
3310         * include/debug/multiset.h: Likewise.
3311         * include/debug/forward_list: Likewise.
3312         * include/debug/unordered_set: Likewise.
3313         * include/debug/vector: Likewise.
3314         * include/debug/map.h: Likewise.
3315         * include/debug/deque: Likewise.
3316         * include/debug/list: Likewise.
3317         * include/debug/multimap.h: Likewise.
3318         * include/profile/set.h: Likewise.
3319         * include/profile/unordered_map: Likewise.
3320         * include/profile/multiset.h: Likewise.
3321         * include/profile/forward_list: Likewise.
3322         * include/profile/vector: Likewise.
3323         * include/profile/unordered_set: Likewise.
3324         * include/profile/map.h: Likewise.
3325         * include/profile/deque: Likewise.
3326         * include/profile/list: Likewise.
3327         * include/profile/multimap.h: Likewise.
3328         * include/bits/hashtable.h: Likewise.
3329         * include/bits/stl_list.h: Likewise.
3330         * include/bits/stl_map.h: Likewise.
3331         * include/bits/hashtable_policy.h: Likewise.
3332         * include/bits/stl_set.h: Likewise.
3333         * include/bits/forward_list.h: Likewise.
3334         * include/bits/stl_multimap.h: Likewise.
3335         * include/bits/stl_vector.h: Likewise.
3336         * include/bits/stl_deque.h: Likewise.
3337         * include/bits/stl_multiset.h: Likewise.
3338         * include/bits/stl_bvector.h: Likewise.
3339         * include/bits/stl_tree.h: Likewise.
3341 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3343         * include/bits/stl_queue.h: Use noexcept per the FDIS.
3344         * include/bits/stl_stack.h: Likewise.
3346 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3348         * config/abi/pre/gnu.ver: Correct last change, export instead
3349         at the existing @3.4.16.
3350         * configure.ac: Revert last change.
3351         * testsuite/util/testsuite_abi.cc: Likewise.
3352         * configure: Regenerate.
3354 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
3356         * doc/xml/manual/documentation_hacking.xml: Minor corrections.
3358 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
3360         * include/std/mutex: Add doxygen comments.
3362 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3364         * config/abi/pre/gnu.ver: Export recently added  basic_streambuf
3365         and basic_stringbuf symbols @3.4.17.
3366         * configure.ac: Update.
3367         * testsuite/util/testsuite_abi.cc: Likewise.
3368         * configure: Regenerate.
3370 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
3372         * libsupc++/guard.cc: Fix comments.
3374 2011-05-25  Ian Lance Taylor  <iant@google.com>
3376         PR libstdc++/49060
3377         * include/backward/hashtable.h (hashtable::erase): Don't crash if
3378         erasing first and another element with a reference to the other
3379         element.
3380         * testsuite/backward/hash_set/49060.cc: New.
3382 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3384         * include/bits/random.h (random_device::min, max): Specify constexpr.
3386 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3388         * include/std/thread: Use noexcept throughout per the FDIS.
3389         * include/std/mutex: Likewise.
3391 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
3393         * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
3395 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
3397         PR libstdc++/49151
3398         * include/std/chrono (operator+, operator-, operator*, operator/,
3399         operator&): Implement LWG 2020 [WP]; specify constexpr.
3400         * testsuite/20_util/duration/arithmetic/dr2020.cc: New.
3402 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
3404         PR libstdc++/49141
3405         * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
3406         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3407         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
3409 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
3411         * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
3412         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
3413         line number.
3415 2011-05-23  Benjamin Kosnik  <bkoz@redhat.com>
3417         PR libstdc++/37144
3418         PR libstdc++/28457
3419         Interface changes for ext/pb_ds.
3420         PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
3421         * include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
3422         (basic_hash_table, basic_branch, list_update): Derive from
3423         container_base_dispatch.
3424         * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
3425         (move_to_front_lu_policy): To lu_move_to_front_policy.
3426         (counter_lu_policy): To lu_counter_policy.
3427         * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
3428         * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
3429         template parameters, declare here.
3430         (null_mapped_type) Remove.
3431         (null_type): Just use this for template tricks everywhere.
3432         * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
3433         Remove.
3434         * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
3435         (string_trie_e_access_traits): To trie_string_access_traits.
3436         * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
3438         File changes.
3439         * include/Makefile.am (pb_headers): Removed and changed file names.
3440         * include/Makefile.in: Regenerated.
3441         * include/ext/pb_ds/detail/basic_types.hpp: Remove.
3442         * include/ext/pb_ds/detail/bin_search_tree_/
3443           cond_dtor_entry_dealtor.hpp: Remove.
3444         * include/ext/pb_ds/detail/bin_search_tree_/
3445           cond_key_dtor_entry_dealtor.hpp: Remove.
3446         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
3447         * include/ext/pb_ds/detail/binary_heap_/
3448           point_const_iterator.hpp: ..here.
3449         * include/ext/pb_ds/detail/basic_tree_policy: Move to...
3450         * include/ext/pb_ds/detail/branch_policy: This.
3451         * include/ext/pb_ds/detail/branch_policy/
3452           basic_tree_policy_base.hpp: Move...
3453         * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
3454         * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
3455         * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
3456         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3457         null_metadata.hpp: Remove.
3458         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3459         const_point_iterator.hpp: Move...
3460         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3461         point_const_iterator.hpp: ...here.
3462         * include/ext/pb_ds/detail/list_update_policy/
3463         counter_lu_metadata.hpp: Move..
3464         * include/ext/pb_ds/detail/list_update_policy/
3465         lu_counter_metadata.hpp: ...here.
3466         * include/ext/pb_ds/detail/list_update_policy/
3467         counter_lu_policy_imp.hpp: Remove.
3468         * include/ext/pb_ds/detail/list_update_policy/
3469         mtf_lu_policy_imp.hpp: Remove.
3470         * include/ext/pb_ds/detail/trie_policy/
3471         string_trie_e_access_traits_imp.hpp: Move...
3472         * include/ext/pb_ds/detail/trie_policy/
3473         sample_trie_access_traits.hpp: ...here.
3474         * include/ext/pb_ds/detail/trie_policy/
3475         sample_trie_e_access_traits.hpp: Move...
3476         * include/ext/pb_ds/detail/trie_policy/
3477         trie_string_access_traits_imp.hpp: ...here.
3478         * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
3479         * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
3480         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
3481         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
3482         types found in the following files into pat_trie_base.
3483         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
3484         * include/ext/pb_ds/detail/pat_trie_/
3485           cond_dtor_entry_dealtor.hpp: Folded.
3486         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
3487         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
3488         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
3489         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
3490         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
3491         * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
3492         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
3493         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
3494         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
3495         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
3496         * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
3497         * include/ext/pb_ds/detail/unordered_iterator/
3498         const_point_iterator.hpp: Move...
3499         * include/ext/pb_ds/detail/unordered_iterator/
3500         point_const_iterator.hpp: ...here.
3503         Adjust for above changes.
3504         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
3505         * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
3506         * include/ext/pb_ds/detail/resize_policy/
3507           sample_resize_trigger.hpp: Same.
3508         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
3509         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
3510         * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
3511         * include/ext/pb_ds/detail/binomial_heap_base_/
3512           binomial_heap_base_.hpp: Same.
3513         * include/ext/pb_ds/detail/binomial_heap_base_/
3514           constructors_destructor_fn_imps.hpp: Same.
3515         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
3516         * include/ext/pb_ds/detail/binomial_heap_base_/
3517           split_join_fn_imps.hpp: Same.
3518         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
3519           for template parameter ordering change.
3520         * include/ext/pb_ds/detail/cc_hash_table_map_/
3521           erase_store_hash_fn_imps.hpp: Same.
3522         * include/ext/pb_ds/detail/cc_hash_table_map_/
3523           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3524         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
3525         * include/ext/pb_ds/detail/cc_hash_table_map_/
3526           insert_no_store_hash_fn_imps.hpp: Same.
3527         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
3528         * include/ext/pb_ds/detail/cc_hash_table_map_/
3529           policy_access_fn_imps.hpp: Same.
3530         * include/ext/pb_ds/detail/cc_hash_table_map_/
3531           resize_store_hash_fn_imps.hpp: Same.
3532         * include/ext/pb_ds/detail/cc_hash_table_map_/
3533           constructor_destructor_store_hash_fn_imps.hpp: Same.
3534         * include/ext/pb_ds/detail/cc_hash_table_map_/
3535           insert_store_hash_fn_imps.hpp: Same.
3536         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
3537         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
3538         * include/ext/pb_ds/detail/cc_hash_table_map_/
3539           entry_list_fn_imps.hpp: Same.
3540         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
3541         * include/ext/pb_ds/detail/cc_hash_table_map_/
3542           find_store_hash_fn_imps.hpp: Same.
3543         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
3544         * include/ext/pb_ds/detail/cc_hash_table_map_/
3545           debug_no_store_hash_fn_imps.hpp: Same.
3546         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
3547         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
3548         * include/ext/pb_ds/detail/cc_hash_table_map_/
3549           constructor_destructor_fn_imps.hpp: Same.
3550         * include/ext/pb_ds/detail/cc_hash_table_map_/
3551           cond_key_dtor_entry_dealtor.hpp: Same.
3552         * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
3553         * include/ext/pb_ds/detail/cc_hash_table_map_/
3554           debug_store_hash_fn_imps.hpp: Same.
3555         * include/ext/pb_ds/detail/cc_hash_table_map_/
3556           erase_no_store_hash_fn_imps.hpp: Same.
3557         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
3558         * include/ext/pb_ds/detail/cc_hash_table_map_/
3559           iterators_fn_imps.hpp: Same.
3560         * include/ext/pb_ds/detail/cc_hash_table_map_/
3561           resize_no_store_hash_fn_imps.hpp: Same.
3562         * include/ext/pb_ds/detail/cc_hash_table_map_/
3563           standard_policies.hpp: Same.
3564         * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
3565         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
3566         * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
3567         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
3568         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
3569         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
3570         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
3571         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
3572         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
3573         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
3574         * include/ext/pb_ds/detail/pat_trie_/
3575           constructors_destructor_fn_imps.hpp: Same.
3576         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
3577         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
3578         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
3579         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
3580         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
3581         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
3582         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
3583         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
3584         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
3585         * include/ext/pb_ds/detail/bin_search_tree_/
3586           policy_access_fn_imps.hpp: Same.
3587         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
3588         * include/ext/pb_ds/detail/bin_search_tree_/
3589           constructors_destructor_fn_imps.hpp: Same.
3590         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
3591         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
3592         * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
3593         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
3594         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
3595         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
3596         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
3597         * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
3598         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
3599         * include/ext/pb_ds/detail/bin_search_tree_/
3600           split_join_fn_imps.hpp: Same.
3601         * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
3602         * include/ext/pb_ds/detail/list_update_policy/
3603           sample_update_policy.hpp: Same.
3604         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3605           trace_fn_imps.hpp: Same.
3606         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3607           erase_fn_imps.hpp: Same.
3608         * include/ext/pb_ds/detail/gp_hash_table_map_/
3609           erase_store_hash_fn_imps.hpp: Same.
3610         * include/ext/pb_ds/detail/gp_hash_table_map_/
3611           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3612         * include/ext/pb_ds/detail/gp_hash_table_map_/
3613           insert_no_store_hash_fn_imps.hpp: Same.
3614         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
3615         * include/ext/pb_ds/detail/gp_hash_table_map_/
3616           policy_access_fn_imps.hpp: Same.
3617         * include/ext/pb_ds/detail/gp_hash_table_map_/
3618           resize_store_hash_fn_imps.hpp: Same.
3619         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
3620         * include/ext/pb_ds/detail/gp_hash_table_map_/
3621           constructor_destructor_store_hash_fn_imps.hpp: Same.
3622         * include/ext/pb_ds/detail/gp_hash_table_map_/
3623           insert_store_hash_fn_imps.hpp: Same.
3624         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
3625         * include/ext/pb_ds/detail/gp_hash_table_map_/
3626           iterator_fn_imps.hpp: Same.
3627         * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
3628         * include/ext/pb_ds/detail/gp_hash_table_map_/
3629           find_no_store_hash_fn_imps.hpp: Same.
3630         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
3631         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
3632         * include/ext/pb_ds/detail/gp_hash_table_map_/
3633           find_store_hash_fn_imps.hpp: Same.
3634         * include/ext/pb_ds/detail/gp_hash_table_map_/
3635           debug_no_store_hash_fn_imps.hpp: Same.
3636         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
3637         * include/ext/pb_ds/detail/gp_hash_table_map_/
3638           constructor_destructor_fn_imps.hpp: Same.
3639         * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
3640         * include/ext/pb_ds/detail/gp_hash_table_map_/
3641           debug_store_hash_fn_imps.hpp: Same.
3642         * include/ext/pb_ds/detail/gp_hash_table_map_/
3643           erase_no_store_hash_fn_imps.hpp: Same.
3644         * include/ext/pb_ds/detail/gp_hash_table_map_/
3645           resize_no_store_hash_fn_imps.hpp: Same.
3646         * include/ext/pb_ds/detail/gp_hash_table_map_/
3647           standard_policies.hpp: Same.
3648         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
3649         * include/ext/pb_ds/detail/types_traits.hpp: Same.
3650         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
3651         * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
3652         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
3653         * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
3654         * include/ext/pb_ds/detail/binary_heap_/
3655           constructors_destructor_fn_imps.hpp: Same.
3656         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
3657         * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
3658         * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
3659         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
3660         * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
3661         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
3662         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
3663         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
3664         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
3665         * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
3666         * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
3667         * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
3668         * include/ext/pb_ds/detail/tree_policy/
3669           sample_tree_node_update.hpp: Same.
3670         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
3671         * include/ext/pb_ds/detail/trie_policy/
3672           sample_trie_node_update.hpp: Same.
3673         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
3674         * include/ext/pb_ds/detail/trie_policy/
3675           prefix_search_node_update_imp.hpp: Same.
3676         * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
3677         * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
3678         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
3679           Adjust for template parameter change, fold into
3680           container_base_dispatch.
3681         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
3682         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
3683         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
3684         * include/ext/pb_ds/detail/pairing_heap_/
3685           constructors_destructor_fn_imps.hpp: Same.
3686         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
3687         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
3688         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
3689         * include/ext/pb_ds/detail/binomial_heap_/
3690           constructors_destructor_fn_imps.hpp: Same.
3691         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
3692         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
3693         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
3694         * include/ext/pb_ds/detail/type_utils.hpp: Same.
3695         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
3696         * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
3697         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3698           policy_access_fn_imps.hpp: Same.
3699         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3700           left_child_next_sibling_heap_.hpp: Same.
3701         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3702           const_iterator.hpp: Same.
3703         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3704           insert_fn_imps.hpp: Same.
3705         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3706           constructors_destructor_fn_imps.hpp: Same.
3707         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3708           debug_fn_imps.hpp: Same.
3709         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3710           node.hpp: Same.
3711         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3712           info_fn_imps.hpp: Same.
3713         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3714           iterators_fn_imps.hpp: Same.
3715         * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
3716         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
3717         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
3718         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
3719         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
3720         * include/ext/pb_ds/detail/thin_heap_/
3721           constructors_destructor_fn_imps.hpp: Same.
3722         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
3723         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
3724         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
3725         * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
3726         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
3727         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
3728         * include/ext/pb_ds/detail/ov_tree_map_/
3729           constructors_destructor_fn_imps.hpp: Same.
3730         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
3731         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
3732         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
3733         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
3734         * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
3735         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
3736         * include/ext/pb_ds/detail/debug_map_base.hpp: Same.
3737         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
3738         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
3739         * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
3740         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
3741         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
3742         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
3743         * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
3744         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
3745         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
3746         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
3747         * include/ext/pb_ds/detail/splay_tree_/
3748           constructors_destructor_fn_imps.hpp: Same.
3749         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
3750         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
3751         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
3752         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
3753         * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
3754         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
3755         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
3756         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
3757         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
3758         * include/ext/pb_ds/detail/list_update_map_/
3759           entry_metadata_base.hpp: Same.
3760         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
3761         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
3762         * include/ext/pb_ds/detail/list_update_map_/
3763           constructor_destructor_fn_imps.hpp: Same.
3764         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
3765         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
3766         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
3767         * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
3768         * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
3769         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
3770         * include/ext/pb_ds/detail/rc_binomial_heap_/
3771           rc_binomial_heap_.hpp: Same.
3772         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
3773         * include/ext/pb_ds/detail/rc_binomial_heap_/
3774           constructors_destructor_fn_imps.hpp: Same.
3775         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
3776         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
3777         * include/ext/pb_ds/detail/rc_binomial_heap_/
3778           split_join_fn_imps.hpp: Same.
3779         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
3780         * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
3781         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
3782         * include/ext/pb_ds/detail/rb_tree_map_/
3783           constructors_destructor_fn_imps.hpp: Same.
3784         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
3785         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
3786         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
3787         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
3788         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
3789         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
3792         Documentation changes.
3793         * include/ext/pb_ds/*: Add doxygen markup.
3794         * doc/doxygen/user.cfg.in: Add details for extracting comments
3795         from pb_ds.
3796         * scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
3797         * scripts/make_graph.py: Move to svg output. Re-format generated tables.
3799         * doc/Makefile.am (stamp-html-copy): New rule.
3800         (stamp-html): Use it to copy non-generated files into html docs.
3801         * doc/Makefile.in: Regenerated.
3803         * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
3804         * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
3805         * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
3806         * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
3808         * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
3809         hash_random_int_erase_mem_usage_test_local.png,
3810         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
3811         tree_text_insert_timing_test_pat_trie_local.png ,
3812         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
3813         priority_queue_text_modify_down_timing_test_local.png,
3814         gp_hash_random_int_subscript_timing_test_find_local.png,
3815         text_find_timing_test_hash_local.png,
3816         multimap_text_insert_timing_test_small_s2p_hash_local.png,
3817         multimap_text_insert_timing_test_small_s2p_tree_local.png,
3818         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
3819         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
3820         multimap_text_insert_timing_test_large_s2p_hash_local.png,
3821         hash_zlob_random_int_find_timing_test_local.png,
3822         multimap_text_insert_timing_test_large_s2p_tree_local.png,
3823         binary_priority_queue_random_int_push_timing_test_local.png,
3824         priority_queue_text_pop_mem_usage_test_local.png,
3825         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
3826         tree_split_join_timing_test_local.png,
3827         multimap_text_find_timing_test_small_s2p_hash_local.png,
3828         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
3829         priority_queue_random_int_push_pop_timing_test_local.png,
3830         multimap_text_find_timing_test_small_s2p_tree_local.png,
3831         gp_hash_random_int_subscript_timing_test_insert_local.png,
3832         priority_queue_text_push_timing_test_local.png,
3833         cc_hash_random_int_subscript_timing_test_find_local.png,
3834         tree_text_insert_timing_test_vector_tree_local.png,
3835         multimap_text_find_timing_test_large_s2p_hash_local.png,
3836         pairing_priority_queue_text_push_timing_test_local.png,
3837         tree_order_statistics_timing_test_local.png,
3838         priority_queue_text_push_pop_timing_test_local.png,
3839         text_find_timing_test_tree_like_local.png,
3840         multimap_text_find_timing_test_large_s2p_tree_local.png,
3841         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
3842         cc_hash_random_int_subscript_timing_test_insert_local.png,
3843         priority_queue_text_modify_up_timing_test_local.png,
3844         random_int_find_find_timing_test_tree_local.png,
3845         priority_queue_random_int_push_timing_test_local.png,
3846         tree_text_insert_timing_test_node_tree_local.png,
3847         pairing_priority_queue_text_push_pop_timing_test_local.png,
3848         gp_hash_random_int_find_timing_test_local.png,
3849         cc_hash_random_int_find_timing_test_local.png,
3850         priority_queue_text_join_timing_test_local.png: Update local pngs.
3853         Testsuite changes.
3854         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
3855         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
3856         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
3857         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
3858         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
3859         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
3860         New.
3861         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
3862         New.
3863         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
3864         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
3866         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
3868         * testsuite/ext/pb_ds/example/basic_set.cc: Update.
3869         * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
3870         * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
3871         * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
3872         * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
3873         * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
3874         * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
3875         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
3876           Same.
3877         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
3878         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
3879         * testsuite/data/make_graph_test_infos.xml: Same.
3880         * testsuite/util/regression/common_type.hpp: Same.
3881         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
3882         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
3883         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
3884         * testsuite/util/regression/rand/priority_queue/
3885           rand_regression_test.hpp: Same.
3886         * testsuite/util/regression/rand/priority_queue/
3887           container_rand_regression_test.tcc: Same.
3888         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
3889         * testsuite/util/regression/rand/assoc/container_rand_regression_test.h
3890         * testsuite/util/regression/rand/assoc/
3891           container_rand_regression_test.tcc: Same.
3892         * testsuite/util/native_type/native_priority_queue.hpp: Same.
3893         * testsuite/util/native_type/native_multimap.hpp: Same.
3894         * testsuite/util/native_type/native_hash_multimap.hpp: Same.
3895         * testsuite/util/native_type/native_set.hpp: Same.
3896         * testsuite/util/native_type/native_map.hpp: Same.
3897         * testsuite/util/native_type/native_hash_set.hpp: Same.
3898         * testsuite/util/native_type/native_hash_map.hpp: Same.
3899         * testsuite/util/testsuite_containers.h
3900         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
3901         * testsuite/util/common_type/assoc/common_type.hpp: Same.
3902         * testsuite/util/common_type/assoc/string_form.hpp: Same.
3903         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
3904         * testsuite/util/common_type/assoc/detail/
3905           trigger_policy_string_form.hpp: Same.
3906         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
3907         * testsuite/util/common_type/assoc/detail/
3908           size_policy_string_form.hpp: Same.
3909         * testsuite/util/common_type/assoc/detail/
3910           probe_fn_string_form.hpp: Same.
3911         * testsuite/util/common_type/assoc/detail/
3912           tree_supports_order_statistics.hpp: Same.
3913         * testsuite/util/common_type/assoc/detail/
3914           trie_supports_prefix_search.hpp: Same.
3915         * testsuite/util/common_type/assoc/detail/
3916           list_update_policy_string_form.hpp: Same.
3917         * testsuite/util/common_type/assoc/detail/
3918           trie_supports_order_statistics.hpp: Same.
3919         * testsuite/util/common_type/assoc/native_set.hpp: Same.
3920         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
3921         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
3922         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
3924 2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
3926         * include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
3927         (istreambuf_iterator<>::istreambuf_iterator(const
3928         istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
3929         in C++0x mode.
3931 2011-05-23  Jason Merrill  <jason@redhat.com>
3933         * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
3935 2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
3937         * testsuite/20_util/bind/cv_quals_2.cc: New.
3939 2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
3941         PR libstdc++/49058
3942         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
3943         operator()(_Args&&...)): Don't cv qualify _Functor directly
3944         in the default template argument, SFINAE doesn't apply when
3945         the functor has no arguments.
3946         * testsuite/20_util/bind/49058_1.cc: New.
3947         * testsuite/20_util/bind/49058_2.cc: Likewise.
3949 2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
3951         * include/bits/unique_ptr.h: Use noexcept per the FDIS.
3953 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3955         * testsuite/21_strings/basic_string/requirements/exception/
3956         propagation_consistent.cc: Fix vs POD-ness of value_type.
3957         * testsuite/21_strings/basic_string/requirements/exception/
3958         basic.cc: Likewise.
3959         * testsuite/ext/vstring/requirements/exception/
3960         propagation_consistent.cc: Likewise.
3961         * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
3963 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3965         * include/bits/char_traits.h: Use noexcept throughout.
3966         * include/std/typeindex: Likewise.
3968         * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
3969         noexcept; adjust callers.
3970         * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
3971         * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
3972         * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
3973         * testsuite/20_util/pair/noexcept_swap.cc: Likewise.
3974         * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
3975         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3976         line numbers.
3978 2011-05-20  Jason Merrill  <jason@redhat.com>
3980         * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
3981         functions from dependent bases.
3982         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
3983         * include/ext/pb_ds/detail/rb_tree_map_/
3984         split_join_fn_imps.hpp: Likewise.
3985         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
3986         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
3987         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
3988         * include/ext/pb_ds/detail/splay_tree_/
3989         split_join_fn_imps.hpp: Likewise.
3990         * include/ext/pb_ds/detail/tree_policy/
3991         order_statistics_imp.hpp: Likewise.
3992         * include/ext/pb_ds/detail/trie_policy/
3993         prefix_search_node_update_imp.hpp: Likewise.
3994         * include/ext/rc_string_base.h: Likewise.
3995         * include/ext/rope: Likewise.
3996         * include/ext/ropeimpl.h: Likewise.
3997         * testsuite/util/exception/safety.h: Likewise.
3998         * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
3999         * testsuite/util/testsuite_io.h: Likewise.
4000         * include/std/functional: Declare mem_fn earlier.
4001         * include/tr1/functional: Likewise.
4002         * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.
4004 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
4006         * include/std/tuple (tuple_element<__i, const _Tp>,
4007         tuple_element<__i, volatile _Tp>, tuple_element<__i,
4008         const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
4009         tuple_size<const volatile _Tp>): Add.
4010         * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
4011         * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
4012         * testsuite/20_util/tuple/cv_tuple_size.cc: New.
4013         * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
4014         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
4015         line number.
4017 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
4019         * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
4020         noexcept.
4021         (__get_helper): Likewise.
4022         (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
4023         * include/bits/move.h (swap): Likewise.
4024         * include/bits/algorithmfwd.h (swap): Adjust.
4025         * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
4026         * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
4027         mode, prefer delete to access control to make the type not copy
4028         assignable.
4029         * testsuite/util/testsuite_tr1.h: Add test classes.
4030         * testsuite/20_util/tuple/noexcept_swap.cc: New.
4031         * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
4032         * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
4033         delete to access control.
4034         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
4035         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
4036         line numbers.
4038 2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
4040         * testsuite/util/testsuite_tr1.h: Add test classes.
4041         * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
4043 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
4045         * include/std/type_traits (is_assignable, is_copy_assignable,
4046         is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
4047         is_nothrow_move_assignable): Add; minor tweaks elsewhere.
4048         (has_nothrow_copy_assign): Remove.
4049         * testsuite/util/testsuite_tr1.h: Add test classes.
4050         * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
4051         * testsuite/20_util/is_assignable/requirements/
4052         explicit_instantiation.cc: Likewise.
4053         * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
4054         * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
4055         Likewise.
4056         * testsuite/20_util/is_nothrow_assignable/requirements/
4057         explicit_instantiation.cc: Likewise.
4058         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
4059         * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
4060         Likewise.
4061         * testsuite/20_util/is_move_assignable/requirements/
4062         explicit_instantiation.cc: Likewise.
4063         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
4064         * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
4065         Likewise.
4066         * testsuite/20_util/is_copy_assignable/requirements/
4067         explicit_instantiation.cc: Likewise.
4068         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
4069         * testsuite/20_util/is_nothrow_move_assignable/requirements/
4070         typedefs.cc: Likewise.
4071         * testsuite/20_util/is_nothrow_move_assignable/requirements/
4072         explicit_instantiation.cc: Likewise.
4073         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
4074         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
4075         typedefs.cc: Likewise.
4076         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
4077         explicit_instantiation.cc: Likewise.
4078         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
4079         dg-error line numbers.
4080         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4081         Likewise.
4082         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4084 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
4086         * include/bits/shared_ptr_base.h: Use noexcept. Define special member
4087         functions as defaulted/deleted.
4088         * include/bits/shared_ptr.h: Use noexcept.
4089         * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
4090         * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
4092 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
4094         * doc/xml/manual/bitmap_allocator.xml: Fix typos.
4096 2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
4098         * libsupc++/initializer_list: Use noexcept specifier.
4099         (initializer_list<>::size, begin, end): Qualify as const.
4100         * include/bits/move.h (__addressof, forward, move, addressof): Specify
4101         as noexcept.
4102         * include/std/bitset: Use noexcept specifier throughout.
4103         * include/debug/bitset: Update.
4104         * include/profile/bitset: Likewise.
4106 2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
4108         * include/std/tuple: Use noexcept where appropriate.
4109         (tuple<>::swap): Rework implementation.
4110         (_Head_base<>::_M_swap_impl): Remove.
4111         (get(std::tuple<>&&)): Add.
4112         * testsuite/20_util/tuple/element_access/get2.cc: New.
4113         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
4114         line number.
4116 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
4118         * include/std/utility: Simplify the last commit, the whole
4119         std::get code is C++0x only.
4121 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
4123         * include/std/utility (get(std::pair<>&&)): Add.
4124         * include/bits/stl_pair.h (pair::swap(pair&),
4125         swap(pair<>&, pair<>&)): Use noexcept.
4126         * include/bits/random.h (discard_block_engine<>::base,
4127         independent_bits_engine<>::base, shuffle_order_engine<>::base,
4128         random_device::entropy): Use noexcept.
4129         * include/std/array: Use noexcept where appropriate.
4130         (get(array<>&&)): Add.
4131         * testsuite/23_containers/array/requirements/get.cc: New.
4132         * testsuite/20_util/pair/get.cc: Likewise.
4133         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
4134         line number.
4136 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
4138         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
4139         Add.
4140         * include/std/limits: Use the latter everywhere.
4141         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
4142         macro usages, the specializations exist only in C++0x mode.
4143         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
4144         line number.
4146 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
4148         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
4149         dg-require-cmath.
4150         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
4152 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
4154         * include/ext/pb_ds/detail/resize_policy/
4155         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
4156         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
4157         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
4158         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
4159         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
4160         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
4161         * include/ext/pb_ds/detail/debug_map_base.hpp,
4162         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
4163         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
4164         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
4165         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
4166         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
4167         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
4168         macro definitions move...
4169         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
4170         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
4171         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
4172         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
4173         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
4174         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
4175         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
4176         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
4177         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
4178         ...here.
4180 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
4182         PR libstdc++/48933
4183         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
4184         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
4185         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
4186         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
4187         scalbn, tgamma, trunc): Use __enable_if on the return type.
4188         * include/tr1/cmath: Likewise.
4189         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
4190         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
4192 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
4194         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
4195         (_GLICXX_DEBUG_VERIFY): Use latter.
4196         * include/ext/pb_ds/detail/resize_policy/
4197         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
4198         containing the original assert call.
4199         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
4200         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
4201         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4202         split_join_fn_imps.hpp: Likewise.
4203         * include/ext/pb_ds/detail/cc_hash_table_map_/
4204         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
4205         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
4206         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
4207         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
4208         erase_no_store_hash_fn_imps.hpp: Likewise.
4209         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
4210         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
4211         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
4212         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
4213         Likewise.
4214         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
4215         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
4216         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
4217         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
4218         Likewise.
4219         * include/ext/pb_ds/detail/gp_hash_table_map_/
4220         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
4221         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
4222         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
4223         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
4224         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
4225         Likewise.
4226         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
4227         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4228         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
4229         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
4230         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
4231         find_fn_imps.hpp, insert_fn_imps.hpp,
4232         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4233         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
4234         * include/ext/pb_ds/detail/binomial_heap_/
4235         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4236         binomial_heap_.hpp: Likewise.
4237         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4238         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
4239         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
4240         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
4241         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
4242         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4243         split_join_fn_imps.hpp: Likewise.
4244         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
4245         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
4246         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
4247         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
4248         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
4249         find_fn_imps.hpp, insert_fn_imps.hpp,
4250         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4251         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
4252         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
4253         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
4254         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
4255         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
4256         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
4257         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
4258         split_join_fn_imps.hpp: Likewise.
4259         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
4260         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
4261         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
4262         * include/ext/pb_ds/hash_policy.hpp: Likewise.
4264 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
4266         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
4268 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
4270         PR libstdc++/47913 (again)
4271         * include/std/ratio (ratio_add, ratio_less): Rewrite.
4272         * testsuite/20_util/ratio/operations/47913.cc: Extend.
4273         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
4274         line numbers.
4275         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
4277 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
4279         PR libstdc++/48848
4280         * include/std/valarray (valarray<>::valarray(valarray&&),
4281         valarray<>::operator=(valarray&&), valarray<>::swap): Add.
4282         * doc/xml/manual/status_cxx200x.xml: Update.
4283         * testsuite/26_numerics/valarray/moveable.cc: New.
4284         * testsuite/26_numerics/valarray/swap.cc: Likewise.
4286 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
4288         PR libstdc++/48750
4289         * include/parallel/multiway_merge.h: Run _ValueType destructors.
4290         * include/parallel/multiway_mergesort.h: Likewise.
4291         * include/parallel/quicksort.h: Likewise.
4292         * include/parallel/random_shuffle.h: Likewise.
4293         * include/parallel/partial_sum.h: Likewise.
4294         * include/parallel/losertree.h: Run destructors; minor tweaks.
4295         * include/parallel/par_loop.h: Run destructors, fix memory
4296         allocations and deallocations.
4297         * testsuite/26_numerics/accumulate/48750.cc: New.
4299         * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
4300         parallel-mode to avoid spurious multiple errors.
4302 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
4304         * include/std/functional (bind): Remove from overload set when first
4305         argument type might be a socket file descriptor.
4306         * testsuite/20_util/bind/socket.cc: New.
4308 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
4310         PR libstdc++/48848
4311         * doc/xml/manual/status_cxx200x.xml: Update valarray status.
4312         * doc/html/*: Regenerate.
4314 2011-05-02  Ollie Wild  <aaw@google.com>
4316         * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
4317         Fix unqualified lookup.
4318         (__sso_string_base<>::_M_assign): Likewise.
4319         (__sso_string_base<>::_M_reserve): Likewise.
4320         (__sso_string_base<>::_M_mutate): Likewise.
4321         (__sso_string_base<>::_M_erase): Likewise.
4322         * include/ext/vstring.h (__versa_string<>::replace): Likewise.
4323         (__versa_string<>::compare): Likewise.
4324         * include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
4326 2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
4328         * doc/xml/manual/status_cxx200x.xml: Update to reflect current status
4329         and FDIS content.
4330         * doc/xml/manual/documentation_hacking.xml: Fix typo.
4331         * doc/html/*: Regenerate.
4333 2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>
4335         * include/std/type_traits (__is_default_constructible_atom,
4336         __is_default_constructible_safe<, true>,
4337         __is_direct_constructible_new_safe,
4338         __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
4339         __is_direct_constructible_ref_cast, __is_direct_constructible,
4340         __is_nary_constructible): Simplify; add comments throughout.
4342 2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
4344         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
4345         Adjust dg-error line numbers.
4346         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4347         Likewise.
4348         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4350 2011-04-30  Doug Kwan  <dougkwan@google.com>
4352         * include/Makefile.am (install-freestanding-headers): Also install
4353         cxxabi_tweaks.h.
4354         * include/Makefile.in: Regenerate.
4356 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
4358         PR libstdc++/48760
4359         * include/std/complex (complex<float>::complex(float, float),
4360         complex<double>::complex(double, double),
4361         complex<long double>::complex(long double, long double)): Use
4362         list-initialization in C++0x mode, initialize in the body in
4363         C++03 mode.
4364         * testsuite/26_numerics/complex/cons/48760.cc: New.
4365         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
4367 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
4369         * include/std/bitset (_Base_bitset(unsigned long long)): Minor
4370         tweak, remove redundant round braces.
4372 2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
4374         * include/bits/move.h (move_if_noexcept): Add.
4375         * testsuite/20_util/move_if_noexcept/requirements/
4376         explicit_instantiation.cc: New.
4377         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
4379 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
4381         * include/std/type_traits (struct underlying_type): Add.
4382         * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
4383         * testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
4384         Likewise.
4385         * testsuite/20_util/underlying_type/requirements/
4386         explicit_instantiation.cc: Likewise.
4387         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
4388         line number.
4390 2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
4392         * include/parallel/multiway_merge.h: Uglify equally_split
4393         and equally_split_point throughout.
4394         * include/parallel/par_loop.h: Likewise.
4395         * include/parallel/equally_split.h: Likewise.
4396         * include/parallel/set_operations.h: Likewise.
4397         * include/parallel/unique_copy.h: Likewise.
4398         * include/parallel/multiway_mergesort.h: Likewise.
4399         * include/parallel/search.h: Likewise.
4400         * include/parallel/partial_sum.h: Likewise.
4401         * include/parallel/find.h: Likewise.
4403 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
4405         * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
4406         documentation.  Expand link text.
4408 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
4410         * libsupc++/cxxabi.h: Adjust link to FAQ entry.
4412 2011-04-22  François Dumont  <francois.cppdevs@free.fr>
4414         * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
4415         unused compilation result thanks to /dev/null.
4416         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode,
4417         check_v3_target_profile_mode, check_v3_target_normal_mode,
4418         check_v3_target_cstdint, check_v3_target_cmath,
4419         check_v3_target_atomic_builtins, check_v3_target_gthreads,
4420         check_v3_target_nanosleep, check_v3_target_sched_yield,
4421         check_v3_target_string_conversions, check_v3_target_swprintf,
4422         check_v3_target_binary_io): Use simple preprocessing rather than
4423         compilation. Discard unused preprocessing result thanks to /dev/null.
4425 2011-04-20  Jim Meyering  <meyering@redhat.com>
4427         * libsupc++/del_opnt.cc (operator delete): Remove useless
4428         if-before-free.
4430 2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
4432         PR libstdc++/48521
4433         * include/std/type_traits (result_of): Handle pointer to member.
4434         * include/std/functional (__invoke): Likewise.
4435         (_Function_to_function_pointer): Remove.
4436         (_Reference_wrapper_base): Provide nested types independent of
4437         unary_function and binary_function.
4438         (reference_wrapper::operator()): DR 2017.
4439         (ref(const A&&), cref(const A&&): Define as deleted.
4440         * include/std/future (async): Simplify SFINAE and use result_of to
4441         support pointer to member.
4442         * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
4443         member.
4444         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
4445         * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
4446         instead of derivation from unary_function and binary_function.
4447         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
4448         * testsuite/20_util/reference_wrapper/invoke-2.cc: New.
4449         * testsuite/20_util/reference_wrapper/ref_neg.c: New.
4450         * testsuite/20_util/reference_wrapper/typedefs-3.c: New.
4452 2011-04-19  Hans-Peter Nilsson  <hp@axis.com>
4454         PR testsuite/48675
4455         * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
4456         this part if SAMPLES < 100000.
4458 2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
4460         * include/std/type_traits (is_nothrow_default_constructible,
4461         is_nothrow_copy_constructible, is_nothrow_move_constructible,
4462         is_copy_constructible, is_move_constructible): Add.
4463         (has_nothrow_default_constructor, has_nothrow_copy_constructor):
4464         Remove.
4465         (is_nothrow_constructible): Adjust.
4467         * testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
4468         ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
4469         ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
4470         NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.
4472         * testsuite/20_util/has_nothrow_default_constructor: Remove.
4473         * testsuite/20_util/has_nothrow_copy_constructor: Likewise.
4475         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
4476         * testsuite/20_util/is_nothrow_move_constructible/requirements/
4477         typedefs.cc: Likewise.
4478         * testsuite/20_util/is_nothrow_move_constructible/requirements/
4479         explicit_instantiation.cc: Likewise.
4480         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
4481         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
4482         typedefs.cc: Likewise.
4483         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
4484         explicit_instantiation.cc: Likewise.
4485         * testsuite/20_util/is_nothrow_default_constructible/value.cc:
4486         Likewise.
4487         * testsuite/20_util/is_nothrow_default_constructible/requirements/
4488         typedefs.cc: Likewise.
4489         * testsuite/20_util/is_nothrow_default_constructible/requirements/
4490         explicit_instantiation.cc: Likewise.
4491         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
4492         * testsuite/20_util/is_move_constructible/requirements/typedefs.cc:
4493         Likewise.
4494         * testsuite/20_util/is_move_constructible/requirements/
4495         explicit_instantiation.cc: Likewise.
4496         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
4497         * testsuite/20_util/is_copy_constructible/requirements/typedefs.cc:
4498         Likewise.
4499         * testsuite/20_util/is_copy_constructible/requirements/
4500         explicit_instantiation.cc: Likewise.
4502         * testsuite/20_util/is_default_constructible/value.cc: Add tests.
4503         * testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.
4505         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
4506         Adjust dg-error line numbers.
4507         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4508         Likewise.
4509         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4511 2011-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
4513         * testsuite/25_algorithms/partition/moveable.cc: Actually run
4514         it in parallel-mode for check-parallel.
4516 2011-04-17  Daniel Krugler  <daniel.kruegler@googlemail.com>
4517             Paolo Carlini  <paolo.carlini@oracle.com>
4519         PR libstdc++/48635 (again)
4520         * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&),
4521         unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&),
4522         unique_ptr<>::operator=(unique_ptr<>&&),
4523         unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not
4524         forward<_Dp>, to forward the deleter.
4525         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: New.
4527 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
4528             Paolo Carlini  <paolo.carlini@oracle.com>
4530         PR libstdc++/48631
4531         * include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted
4532         function call operator.
4533         * testsuite/20_util/default_delete/48631_neg.cc: New.
4534         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
4535         line numbers.
4537 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
4538             Paolo Carlini  <paolo.carlini@oracle.com>
4540         PR libstdc++/48635
4541         * include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&),
4542         unique_ptr<>::operator=(unique_ptr<>&&),
4543         unique_ptr<_Tp[],>::operator=(unique_ptr&&),
4544         unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter
4545         instead of moving it.
4546         * testsuite/20_util/unique_ptr/assign/48635.cc: New.
4548 2011-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4550         * scripts/extract_symvers.pl: Handle NOTY.
4552 2011-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
4554         * include/std/istream: Fix comments in the light of DR60 + N3168.
4556 2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
4557             Paolo Carlini  <paolo.carlini@oracle.com>
4559         PR libstdc++/48526
4560         * include/std/type_traits (struct is_constructible): Re-implement,
4561         according to n3290.
4562         (struct is_default_constructible): Add.
4563         (struct is_destructible): Likewise.
4564         (struct __and_, __or_, __not_): Add and use throughout; reorder some
4565         facilities, other minor tweaks.
4566         * testsuite/util/testsuite_tr1.h: Add test types.
4567         * testsuite/20_util/is_constructible/value-2.cc: New.
4568         * testsuite/20_util/is_default_constructible/value.cc: Likewise.
4569         * testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
4570         Likewise.
4571         * testsuite/20_util/is_default_constructible/requirements/
4572         explicit_instantiation.cc: Likewise.
4573         * testsuite/20_util/is_destructible/value.cc: Likewise.
4574         * testsuite/20_util/is_destructible/requirements/typedefs.cc:
4575         Likewise.
4576         * testsuite/20_util/is_destructible/requirements/
4577         explicit_instantiation.cc: Likewise.
4578         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
4579         dg-error line numbers.
4580         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4581         Likewise.
4582         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4583         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
4585 2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
4587         * testsuite/20_util/is_function/value.cc: Add, adapted from the tr
4588         testsuite.
4589         * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
4590         * testsuite/20_util/is_function/requirements/
4591         explicit_instantiation.cc: Likewise.
4592         * testsuite/20_util/is_function/24808.cc: Likewise.
4593         * testsuite/20_util/is_function/35637.cc: Likewise.
4594         * testsuite/20_util/is_object/value.cc: Likewise.
4595         * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
4596         * testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
4597         : Likewise.
4598         * testsuite/20_util/is_object/24808.cc: Likewise.
4599         * testsuite/20_util/is_compound/value.cc: Likewise.
4600         * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
4601         * testsuite/20_util/is_compound/requirements/
4602         explicit_instantiation.cc: Likewise.
4603         * testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
4604         * testsuite/20_util/is_member_object_pointer/requirements/
4605         typedefs.cc: Likewise.
4606         * testsuite/20_util/is_member_object_pointer/requirements/
4607         explicit_instantiation.cc: Likewise.
4608         * testsuite/20_util/is_fundamental/value.cc: Likewise.
4609         * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
4610         * testsuite/20_util/is_fundamental/requirements/
4611         explicit_instantiation.cc: Likewise.
4612         * testsuite/20_util/is_member_pointer/value.cc: Likewise.
4613         * testsuite/20_util/is_member_pointer/requirements/typedefs.cc:
4614         Likewise.
4615         * testsuite/20_util/is_member_pointer/requirements/
4616         explicit_instantiation.cc: Likewise.
4617         * testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
4618         * testsuite/20_util/is_member_function_pointer/
4619         requirements/typedefs.cc: Likewise.
4620         * testsuite/20_util/is_member_function_pointer/requirements/
4621         explicit_instantiation.cc: Likewise.
4623         * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
4624         Copyright years.
4626 2011-04-12  Takaya Saito  <gintensubaru@gmail.com>
4628         PR libstdc++/48476
4629         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
4630         _Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
4631         (_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
4632         * testsuite/20_util/tuple/cons/48476.cc: New.
4633         * testsuite/20_util/tuple/48476.cc: Likewise.
4634         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
4636 2011-04-12  Allan McRae  <allan@archlinux.org>
4638         PR libstdc++/48566
4639         * testsuite/tr1/6_containers/unordered_map/requirements/
4640         iterator_null_neg.cc: Include <cstddef>.
4641         * testsuite/tr1/6_containers/unordered_set/requirements/
4642         iterator_null_neg.cc: Likewise.
4643         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
4644         <cstring>.
4645         * testsuite/util/testsuite_common_types.h: Include <limits>.
4646         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
4647         Adjust dg-error line numbers.
4648         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
4649         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
4650         Likewise.
4651         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
4652         Likewise.
4653         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
4654         Likewise.
4655         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
4656         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
4658 2011-04-11  Jason Merrill  <jason@redhat.com>
4660         * testsuite/20_util/is_convertible/value.cc: Adjust.
4662 2011-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
4664         * testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
4665         it in parallel-mode for check-parallel.
4666         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
4667         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
4668         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
4669         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
4670         Likewise.
4671         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
4672         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
4673         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
4675         * testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
4676         the tests based on std::lexicographical_compare for check-parallel.
4677         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
4679 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4681         PR libstdc++/48541
4682         * include/std/functional (_Base_manager::_M_get_pointer): Use
4683         addressof.
4684         * testsuite/20_util/function/48541.cc: New.
4686 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4688         PR libstdc++/48465
4689         * configure.ac (libtool_VERSION): Bump library version to 6:16:0.
4690         * configure: Regenerate.
4691         * config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols.
4692         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
4694 2011-04-06  Jeffrey Yasskin  <jyasskin@google.com>
4696         * include/ext/algorithm (is_sorted): In C++0x mode import from
4697         namespace std.
4698         * include/ext/numeric (iota): In C++0x mode import from
4699         namespace std.
4700         * testsuite/ext/is_sorted/cxx0x.cc: New.
4701         * testsuite/ext/iota/cxx0x.cc: New.
4703 2011-04-02  Jonathan Wakely  <redi@gcc.gnu.org>
4705         PR libstdc++/48398
4706         * include/bits/unique_ptr.h (__tuple_type): Store pointer type.
4707         * testsuite/20_util/unique_ptr/modifiers/48398.cc: New.
4708         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove
4709         unused parameter name.
4711 2011-03-31  Jeffrey Yasskin  <jyasskin@google.com>
4713         * libsupc++/exception_ptr.h: Forward-declare std::type_info.
4714         * libsupc++/nested_exception.h (__throw_with_nested): Remove a
4715         redundant default argument from std::__throw_with_nested.
4717 2011-03-31  Paolo Carlini  <paolo.carlini@oracle.com>
4719         PR libstdc++/48382
4720         * src/ctype.cc: Do not include <bits/ctype_noninline.h>.
4721         * src/Makefile.am: Add ctype_configure_char.cc to host_sources.
4722         * src/Makefile.in: Regenerate.
4723         * include/Makefile.am: Remove ctype_noninline.h from host_headers.
4724         * include/Makefile.in: Regenerate.
4725         * doc/xml/manual/internals.xml: Update.
4726         * config/os/newlib/ctype_noninline.h: Fixup and rename to...
4727         * config/os/newlib/ctype_configure_char.cc: ... this.
4728         * config/os/aix/ctype_noninline.h: Likewise.
4729         * config/os/aix/ctype_configure_char.cc: Likewise.
4730         * config/os/vxworks/ctype_noninline.h: Likewise.
4731         * config/os/vxworks/ctype_configure_char.cc
4732         * config/os/hpux/ctype_noninline.h: Likewise.
4733         * config/os/hpux/ctype_configure_char.cc: Likewise.
4734         * config/os/gnu-linux/ctype_noninline.h: Likewise.
4735         * config/os/gnu-linux/ctype_configure_char.cc: Likewise.
4736         * config/os/mingw32/ctype_noninline.h: Likewise.
4737         * config/os/mingw32/ctype_configure_char.cc: Likewise.
4738         * config/os/tpf/ctype_noninline.h: Likewise.
4739         * config/os/tpf/ctype_configure_char.cc: Likewise.
4740         * config/os/uclibc/ctype_noninline.h: Likewise.
4741         * config/os/uclibc/ctype_configure_char.cc: Likewise.
4742         * config/os/bionic/ctype_noninline.h: Likewise.
4743         * config/os/bionic/ctype_configure_char.cc: Likewise.
4744         * config/os/djgpp/ctype_noninline.h: Likewise.
4745         * config/os/djgpp/ctype_configure_char.cc: Likewise.
4746         * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
4747         * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
4748         * config/os/bsd/netbsd/ctype_noninline.h: Likewise.
4749         * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
4750         * config/os/bsd/darwin/ctype_noninline.h: Likewise.
4751         * config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
4752         * config/os/bsd/freebsd/ctype_noninline.h: Likewise.
4753         * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
4754         * config/os/irix/irix6.5/ctype_noninline.h: Likewise.
4755         * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
4756         * config/os/generic/ctype_noninline.h: Likewise.
4757         * config/os/generic/ctype_configure_char.cc: Likewise.
4758         * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
4759         * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.
4761 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4763         * include/std/future (future::share): Add.
4764         (packaged_task::result_type): Remove as per LWG 2030.
4765         (packaged_task::packaged_task): Remove redundant constructors, as per
4766         LWG 1514.
4767         * testsuite/30_threads/future/members/share.cc: New.
4768         * testsuite/30_threads/packaged_task/requirements/typedefs.cc: Remove.
4770 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4772         * testsuite/28_regex/match_results/ctors/char/default.cc: Do not call
4773         members which require a fully established result state.
4774         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
4776 2011-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
4778         * include/bits/random.h (negative_binomial_distribution<>::
4779         negative_binomial_distribution(_IntType, double),
4780         negative_binomial_distribution<>::
4781         negative_binomial_distribution(const param_type&)): Tweak
4782         construction of _M_gd.
4783         * include/bits/random.tcc (negative_binomial_distribution<>::
4784         operator()): Adjust.
4786 2011-03-24  Paolo Carlini  <paolo.carlini@oracle.com>
4788         * include/bits/random.h (negative_binomial_distribution<>::
4789         negative_binomial_distribution(_IntType, double),
4790         negative_binomial_distribution<>::
4791         negative_binomial_distribution(const param_type&)): Fix
4792         construction of _M_gd.
4793         * include/bits/random.tcc (negative_binomial_distribution<>::
4794         operator()): Fix computation, per Leger's algorithm.
4795         * testsuite/util/testsuite_random.h (discrete_pdf,
4796         negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New.
4797         (binomial_pdf): Swap last two parameters.
4798         * testsuite/26_numerics/random/discrete_distribution/
4799         operators/values.cc: New.
4800         * testsuite/26_numerics/random/negative_binomial_distribution/
4801         operators/values.cc: Likewise.
4802         * testsuite/26_numerics/random/poisson_distribution/
4803         operators/values.cc: Likewise.
4804         * testsuite/26_numerics/random/uniform_int_distribution/
4805         operators/values.cc: Likewise.
4806         * testsuite/26_numerics/random/binomial_distribution/
4807         operators/values.cc: Adjust.
4809 2011-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4811         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
4812         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4813         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
4814         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4815         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4817 2011-03-23  Matthias Klose  <doko@ubuntu.com>
4819         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Regenerated.
4821 2011-03-23  Uros Bizjak  <ubizjak@gmail.com>
4823         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
4825 2011-03-22  Joseph Myers  <joseph@codesourcery.com>
4827         * configure.ac: Don't handle powerpc*-*-gnu*.
4828         * configure: Regenerate.
4830 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4832         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Tweak
4833         Copyright years.
4834         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
4835         Likewise.
4837 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4839         * include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add,
4840         per DR 1401.
4841         (operator==, operator!=, operator<): Fix per the letter of DR 1401.
4842         * include/bits/shared_ptr_base.h: Likewise for __shared_ptr.
4843         * include/bits/unique_ptr.h (operator==, operator!=, operator<,
4844         operator<=, operator>, operator>=): Fix per the letter of DR 1401.
4845         * testsuite/20_util/shared_ptr/comparison/dr1401.cc: New.
4846         * testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
4847         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
4849 2011-03-22  Jakub Jelinek  <jakub@redhat.com>
4851         * config/abi/pre/gnu.ver (GLIBCXX_3.4.15): Export _ZNSsC2EOSs
4852         and _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_.
4853         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerated.
4854         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4855         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4856         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4857         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4858         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4859         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4860         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4861         Likewise.
4862         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
4863         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4864         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4865         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4866         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
4867         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4868         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: New test.
4869         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: New
4870         test.
4872 2011-03-21  Jack Howarth  <howarth@bromo.med.uc.edu>
4874         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune "could not
4875         create compact unwind for" warnings.
4877 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
4879         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
4880         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4881         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4882         Likewise.
4883         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4884         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4885         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4886         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4887         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4888         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4889         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4890         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4891         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4893         * testsuite/util/testsuite_abi.cc (check_version): Set incompatible
4894         even when adding symbols to CXXABI_1.3, GLIBCXX_LDBL_3.4 and
4895         CXXABI_LDBL_1.3 versions.
4897 2011-03-21  Benjamin Kosnik  <bkoz@redhat.com>
4899         * config/abi/pre/gnu.ver: Remove typeinfo name exports for C++0x types.
4901 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
4903         * config/abi/pre/gnu.ver (CXXABI_1.3): Don't export _ZT[IS][PK]*[no].
4904         (CXXABI_1.3.5): Export _ZTI[PK]*[no].
4906 2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4908         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
4909         sparc*-sun-solaris2.10 && lp64.
4911 2011-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4913         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename
4914         to check_v3_target_cmath.
4915         * testsuite/lib/dg-options.exp (dg-require-c99_math): Rename
4916         to dg-require-cmath.
4917         * testsuite/26_numerics/random/binomial_distribution/
4918         operators/values.cc: Adjust.
4920 2011-03-18  Diego Novillo  <dnovillo@google.com>
4922         * testsuite/decimal/mixed-mode-arith_neg.cc: Rename from
4923         mixed-mode_neg.cc
4924         * testsuite/decimal/mixed-mode-cmp_neg.cc: Factor out of
4925         mixed-mode-arith_neg.cc
4927 2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
4929         * testsuite/util/testsuite_random.h: New.
4930         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Add.
4931         * testsuite/lib/dg-options.exp (dg-require-c99_math): Likewise.
4932         * testsuite/26_numerics/random/bernoulli_distribution/
4933         operators/values.cc: New.
4934         * testsuite/26_numerics/random/binomial_distribution/
4935         operators/values.cc: Likewise.
4936         * testsuite/26_numerics/random/geometric_distribution/
4937         operators/values.cc: Likewise.
4939 2011-03-16  Benjamin Kosnik  <bkoz@redhat.com>
4941         * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes.
4942         * testsuite/19_diagnostics/stdexcept.cc: New.
4944 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
4946         * include/std/thread: Revert.
4947         * src/thread.cc: Same.
4948         * config/abi/pre/gnu.ver: Same.
4950 2011-03-15  Doug Kwan  <dougkwan@google.com>
4952         PR libstdc++/48123
4953         * include/Makefile.am (install-freestanding-headers): Install
4954         cpu_defines.h
4955         * include/Makefile.in: Regenerate.
4957 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
4959         * config/abi/pre/gnu.ver: Make nested_exception exports super clear.
4960         Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15.
4962 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4964         PR libstdc++/48130
4965         * src/future.cc: Guard definitions.
4966         * libsupc++/nested_exception.cc: Same.
4968 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4970         * src/Makefile.am: Add functional.cc, shared_ptr.cc.
4971         * src/Makefile.in: Regenerate.
4972         * libsupc++/Makefile.am: Add nested_exception.cc.
4973         * libsupc++/Makefile.in: Regenerate.
4974         * src/system_error.cc: Add ctor and dtor definitions for error_category.
4975         * src/functional.cc: New. Add dtor definition for bad_function_call.
4976         * src/stdexcept.cc: Add dtor definitions for domain_error,
4977         invalid_argument, length_error, out_of_range, range_error,
4978         overflow_error, underflow_error.
4979         * src/future.cc: Add dtor definition for __future_base::_Result_base.
4980         * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr.
4981         * src/thread.cc: Add dtor for thread::_Impl_base.
4982         * include/std/system_error: Adjust.
4983         * include/std/stdexcept: Same.
4984         * include/std/future: Same.
4985         * include/std/functional: Same.
4986         * include/std/thread: Same.
4987         * include/bits/shared_ptr_base.h: Same.
4988         * libsupc++/nested_exception.cc: New. Add dtor for nested_exception.
4989         * libsupc++/nested_exception.h: Adjust.
4990         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
4991         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
4992         * config/abi/pre/gnu.ver: Add new exports.
4994 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4996         * include/bits/regex_compiler.h: Nest namespace versioning.
4997         * include/bits/regex_grep_matcher.tcc: Same.
4998         * include/bits/regex_grep_matcher.h: Same.
4999         * include/bits/regex_cursor.h: Same.
5000         * include/bits/regex_nfa.h: Same.
5001         * include/bits/regex_nfa.tcc: Same.
5003         * include/bits/regex_grep_matcher.h: Version forward declarations.
5004         * include/bits/c++config: Add namespace association for __regex.
5005         * include/bits/regex.h: Make sub_match consistent.
5007 2011-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5009         * doc/xml/manual/abi.xml: Replace docs.sun.com URLs by their OTN
5010         equivalents.
5011         * doc/html/manual/abi.html: Regenerate.
5013 2011-03-14  Tom Tromey  <tromey@redhat.com>
5015         * python/libstdcxx/v6/printers.py (_use_gdb_pp): New global.
5016         Try to import `gdb.printing' module.
5017         (UniquePointerPrinter.__init__): Add 'typename' argument.
5018         (StdSlistPrinter.__init__): Likewise.
5019         (StdSlistIteratorPrinter.__init__): Likewise.
5020         (StdVectorIteratorPrinter.__init__): Likewise.
5021         (StdRbtreeIteratorPrinter.__init__): Likewise.
5022         (StdDebugIteratorPrinter.__init__): Likewise.
5023         (StdDequeIteratorPrinter.__init__): Likewise.
5024         (StdStringPrinter.__init__): Likewise.
5025         (RxPrinter, Printer): New class.
5026         (libstdcxx_printer): New global.
5027         (register_libstdcxx_printers): Rewrite.
5028         (build_libstdcxx_dictionary): Rewrite.
5029         (pretty_printers_dict): Remove.
5031 2011-03-14  Andrey Zholos  <aaz@althenia.net>
5033         PR libstdc++/48114
5034         * include/bits/random.h (geometric_distribution): Correct formula
5035         in comment, per C++0x.
5036         (geometric_distribution<>::param_type::param_type(double)): Fix check.
5037         (geometric_distribution<>::param_type::_M_initialize):
5038         Store log(1 - p).
5039         * include/bits/random.tcc (geometric_distribution<>::operator()):
5040         Fix computation.
5041         (binomial_distribution<>::operator()): Likewise.
5043 2011-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
5045         * testsuite/util/testsuite_rvalref.h: Minor tweaks.
5047 2011-03-09  Jonathan Wakely  <redi@gcc.gnu.org>
5048             Chris Jefferson  <chris@bubblescope.net>
5049             Paolo Carlini  <paolo.carlini@oracle.com>
5051         * testsuite/util/testsuite_rvalref.h (rvalstruct_compare_by_value):
5052         New.
5053         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
5054         Likewise.
5055         * testsuite/25_algorithms/partial_sort/check_compare_by_value:
5056         Likewise.
5057         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
5058         Likewise.
5059         * testsuite/25_algorithms/sort/check_compare_by_value: Likewise.
5061 2011-03-09  Chris Jefferson  <chris@bubblescope.net>
5063         PR libstdc++/48038
5064         * include/bits/stl_algo.h (__merge_backward): Rename to
5065         __move_merge_backward and change to always move rather than copy.
5066         (__move_merge): New function similar to std::merge except values
5067         are moved instead of copied.
5068         (__merge_adaptive, __merge_sort_loop): Change from using std::merge
5069         and __merge_backward to __move_merge and __move_merge_backward.
5071 2011-03-07  Jason Merrill  <jason@redhat.com>
5073         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
5074         expected errors.
5076 2011-03-07  Benjamin Kosnik  <bkoz@redhat.com>
5077             Matthias Klose  <doko@ubuntu.com>
5078             Jonathan Wakely  <redi@gcc.gnu.org>
5080         PR libstdc++/47145
5081         * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Define.
5082         * configure.ac: Use it.
5083         * doc/Makefile.am (XSL_STYLE_DIR): Set at configure time.
5084         * configure: Regenerate.
5085         * doc/Makefile.in: Regenerate.
5087 2011-03-04  Benjamin Kosnik  <bkoz@chula>
5089         * src/Makefile.am (inst_sources): Make source instantion files
5090         conditional.
5091         (XTEMPLATE_FLAGS): Make -fno-implicit-templates conditional.
5092         * src/Makefile.in: Regenerate.
5093         * src/valarray-inst.cc: Move to..
5094         * src/valarray.cc: ...this.
5095         * acinclude.m4 (GLIBCXX_ENABLE_EXTERN_TEMPLATE]): Define.
5096         * configure.ac (GLIBCXX_ENABLE_EXTERN_TEMPLATE): Use it.
5097         * configure: Regenerate.
5098         * include/Makefile.am (stamp-extern-template): Add.
5099         * include/Makefile.in: Regenerate.
5101         * doc/xml/manual/configure.xml: Document --enable-extern-template.
5103         * include/bits/locale_classes.tcc: Adjust comment.
5104         * include/bits/locale_facets.tcc: Same.
5105         * include/bits/basic_ios.tcc: Same.
5106         * include/bits/istream.tcc: Same.
5107         * include/bits/codecvt.h: Same.
5108         * include/bits/ostream.tcc: Same.
5109         * include/bits/sstream.tcc: Same.
5110         * include/bits/c++config: Same.
5111         * include/bits/basic_string.tcc: Same.
5112         * include/bits/ostream_insert.h: Same.
5113         * include/bits/locale_facets_nonio.tcc: Same.
5114         * include/bits/streambuf.tcc: Same.
5115         * include/bits/allocator.h: Same.
5116         * include/bits/fstream.tcc: Same.
5118         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
5120 2011-03-02  Benjamin Kosnik  <bkoz@redhat.com>
5122         * testsuite/Makefile.am: Make clean fixups.
5123         * testsuite/Makefile.in: Regenerate.
5125 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
5127         * include/std/ratio (ratio_less): Add comments.
5129 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
5131         PR libstdc++/47913
5132         * include/std/ratio (ratio_add): Avoid denominator overflow.
5133         * testsuite/20_util/ratio/operations/47913.cc: New.
5135 2011-02-28  Benjamin Kosnik  <bkoz@redhat.com>
5137         * testsuite/20_util/hash/chi2_quality.cc: Use C++0x mode on simulators.
5138         * testsuite/20_util/hash/quality.cc: Same.
5140 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
5142         PR libstdc++/47921
5143         * include/std/streambuf (basic_streambuf<>::__safe_gbump,
5144         __safe_pbump): Add.
5145         * include/bits/streambuf.tcc (basic_streambuf<>::xgetn,
5146         xputn): Use the latter.
5147         * include/bits/streambuf_iterator.h: Likewise.
5148         * src/strstream.cc: Likewise.
5149         * src/streambuf.cc: Likewise.
5150         * src/compatibility.cc: Likewise.
5151         * src/istream.cc: Likewise.
5152         * include/bits/fstream.tcc (basic_filebuf<>::xsgetn): Use setg
5153         instead of gbump.
5154         * include/std/sstream (basic_stringbuf<>::_M_pbump): Add.
5155         * include/bits/sstream.tcc (basic_stringbuf<>::seekoff,
5156         seekpos, _M_sync): Use setg, setp, and _M_pbump.
5157         * config/abi/pre/gnu.ver: Tweak.
5159 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
5161         * testsuite/20_util/ratio/comparisons/comp3.cc: New.
5163 2011-02-28  Marc Glisse  <marc.glisse@normalesup.org>
5165         PR libstdc++/42622
5166         * include/std/ratio (ratio_less): Reimplement to never overflow.
5167         * testsuite/20_util/ratio/comparisons/comp2.cc: Extend.
5169 2011-02-24  Benjamin Kosnik  <bkoz@redhat.com>
5171         * testsuite/18_support/type_info/fundamental.cc: New.
5173         * testsuite/Makefile.am: Make clean fixups.
5174         * testsuite/Makefile.in: Regenerate.
5176 2011-02-19  François Dumont  <francois.cppdevs@free.fr>
5178         * include/debug/string (basic_string::insert): Add iterator check and
5179         pass normal iterator to normal insert.
5180         * include/debug/macros.h (__glibcxx_check_heap,
5181         __glibcxx_check_heap_pred): Remove __glibcxx_check_valid_range,
5182         already done.
5184 2011-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
5186         PR libstdc++/47776
5187         * testsuite/ext/vstring/hash/char/1.cc: Fix.
5188         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
5190 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
5192         * include/bits/regex.h (basic_regex::traits_type): Add typedef.
5193         (basic_regex::basic_regex(basic_regex&&)): Add noexcept.
5194         (basic_regex::operator=(basic_regex&&)): Likewise.
5195         (basic_regex::assign(basic_regex&&)): Likewise.
5196         (operator==(sub_match,...)): Implement DR 1181.
5197         (match_results::match_results(match_results&&)): Define.
5198         (match_results::operator=(const match_results&)): Fix parameter type.
5199         (match_results::operator=(match_results&&)): Define.
5201 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
5203         PR libstdc++/47724
5204         * include/bits/regex_compiler.h (_Scanner::_M_advance): Do not treat
5205         line anchors as metacharacters.
5206         * testsuite/28_regex/basic_regex/ctors/47724.cc: New.
5208 2011-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
5210         PR libstdc++/47773
5211         * include/ext/vstring.h (hash<__gnu_cxx::__vstring>,
5212         hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>,
5213         hash<__gnu_cxx::__u32vstring>): Add.
5214         * testsuite/ext/vstring/hash/char/1.cc: New.
5215         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
5217 2011-02-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
5219         * include/bits/regex.h (match_results::format): Use char_traits.
5221 2011-02-16  Benjamin Kosnik  <bkoz@redhat.com>
5223         * include/std/atomic: Remove atomic_address, uplift to N3225.
5224         * include/bits/atomic_0.h: Same.
5225         * include/bits/atomic_2.h: Same.
5226         * include/bits/atomic_base.h: Same.
5227         * testsuite/29_atomics/atomic_address/*: Delete.
5229 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
5231         * include/bits/regex.h (sub_match::sub_match): Add.
5232         (match_results::ready): Add.
5233         (match_results::empty): Adjust.
5234         (match_results::length): Add missing dereference.
5235         (match_results::operator[],prefix,suffix): Add debug mode checks.
5236         (match_results::cend): Re-use end().
5237         (match_results::format): Adjust signatures.
5238         (operator==(match_results,match_results)): Implement.
5239         * include/bits/regex_compiler.h (_Scanner_base): Use constexpr.
5240         * include/bits/regex_constants.h (syntax_option_type): Likewise.
5241         * include/bits/regex_grep_matcher.h: Fix comment typo.
5242         (_SpecializedResults::_SpecializedResults): Simplify.
5243         * include/bits/regex_cursor.h: Fix comment typo.
5244         * include/bits/regex_nfa.h: Likewise.
5245         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
5246         Fix error code, remove xfail.
5247         * testsuite/28_regex/basic_regex/ctors/extended/
5248         string_range_01_02_03.cc: Likewise.
5250 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
5252         * include/bits/regex_compiler.h: Remove unnecessary bind() calls.
5253         * include/bits/regex_nfa.h: Remove unnecessary base classes.
5255 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5257         * configure: Regenerate.
5259 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
5261         PR libstdc++/47709
5262         * include/ext/algorithm (is_heap): In C++0x mode import from
5263         namespace std.
5264         * testsuite/ext/is_heap/47709.cc: New.
5266 2011-02-12  Jakub Jelinek  <jakub@redhat.com>
5267             Jonathan Wakely  <jwakely.gcc@gmail.com>
5269         PR libstdc++/47662
5270         * testsuite/17_intro/headers/c++200x/operator_names.cc: New.
5271         * testsuite/17_intro/headers/c++1998/operator_names.cc: Add comment.
5273 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
5275         * include/tr1/cmath (fabs): Define.
5276         * include/tr1/complex (acos, asin, atan): Avoid duplicate definitions
5277         in C++0x mode.
5279 2011-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
5281         * testsuite/tr1/headers/c++200x/complex.cc: New.
5283 2011-02-11  Johannes Singler  <singler@kit.edu>
5285         PR libstdc++/47433
5286         * include/parallel/losertree.h
5287         (_LoserTreeUnguarded<>::__delete_min_insert):
5288         Add missing "using std::swap;", as for other variants.
5290 2011-02-10  Benjamin Kosnik  <bkoz@redhat.com>
5292         * src/Makefile.am (sources): Add regex.cc.
5293         * src/Makefile.in: Regenerate.
5294         * src/regex.cc: New.
5295         * include/bits/regex_error.h (error_type): Use constexpr.
5296         (regex_error): Move ctor and dtor out of line.
5298         * testsuite/28_regex/03_requirements: To...
5299         * testsuite/28_regex/requirements: ... this.
5300         * testsuite/28_regex/04_header: To...
5301         * testsuite/28_regex/headers: ... this.
5302         * testsuite/28_regex/05_constants: To...
5303         * testsuite/28_regex/constants: ... this.
5304         * testsuite/28_regex/06_exception_type: To...
5305         * testsuite/28_regex/regex_error: ... this.
5306         * testsuite/28_regex/07_traits: To...
5307         * testsuite/28_regex/traits: ... this.
5308         * testsuite/28_regex/08_basic_regex: To...
5309         * testsuite/28_regex/basic_regex: ... this.
5310         * testsuite/28_regex/09_sub_match: To...
5311         * testsuite/28_regex/sub_match: ... this.
5312         * testsuite/28_regex/10_match_results: To...
5313         * testsuite/28_regex/match_results: ... this.
5314         * testsuite/28_regex/11_algorithms: To...
5315         * testsuite/28_regex/algorithms: ... this.
5316         * testsuite/28_regex/12_iterators: To...
5317         * testsuite/28_regex/iterators: ... this.
5319 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
5321         PR libstdc++/47662
5322         * include/bits/c++config: Do not use alternative token.
5323         * testsuite/17_intro/headers/c++1998/operator_names.cc: New.
5325 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
5327         * src/future.cc (future_error_category::message): Handle no_state.
5329 2011-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
5331         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Do
5332         not test in C++0x mode.
5333         * testsuite/23_containers/map/modifiers/erase/47628.cc: Likewise.
5334         * testsuite/20_util/headers/utility/synopsis.cc: Tweak to work
5335         in C++0x mode too.
5337 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
5339         * doc/xml/manual/status_cxx200x.xml: Update.
5340         * doc/html/*: Regenerate.
5342 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
5344         * doc/xml/manual/debug.xml: Improve data race docs.
5346 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
5348         PR libstdc++/47668
5349         * include/debug/map.h (map): Remove unnecessary using-declaration.
5350         * include/debug/multimap.h (multimap): Likewise.
5351         * include/profile/map.h (map): Likewise.
5352         * include/profile/multimap.h (multimap): Likewise.
5354 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
5356         PR libstdc++/43863
5357         * libsupc++/guard.cc (recursive_init_error::~recursive_init_error):
5358         Move to ...
5359         * libsupc++/guard_error.cc: ... new file.
5360         * libsupc++/Makefile.am: Update.
5361         * libsupc++/Makefile.in: Regenerate.
5363 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
5365         * include/std/future (packaged_task::operator bool): Rename to...
5366         (packaged_task::valid): ...this.
5367         * testsuite/30_threads/packaged_task/cons/1.cc: Adjust.
5368         * testsuite/30_threads/packaged_task/cons/2.cc: Adjust.
5369         * testsuite/30_threads/packaged_task/cons/move.cc: Adjust.
5370         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Adjust.
5371         * testsuite/30_threads/packaged_task/cons/alloc.cc: Adjust.
5372         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
5373         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
5374         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
5375         * testsuite/30_threads/packaged_task/members/swap.cc: Adjust.
5376         * testsuite/30_threads/packaged_task/members/boolconv.cc: Remove.
5377         * testsuite/30_threads/packaged_task/members/valid.cc: Add.
5379 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
5381         * doc/xml/manual/io.xml: Fix typo.
5382         * doc/html/manual/streambufs.html: Likewise.
5384 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
5386         * config/abi/pre/gnu.ver: Fix.
5388 2011-02-08  Benjamin Kosnik  <bkoz@redhat.com>
5390         * doc/xml/manual/appendix_porting.xml: Add doc section.
5391         * doc/xml/manual/appendix_contributing.xml: Split out doc bits to...
5392         * doc/xml/manual/documentation_hacking.xml: ...here.
5394         * doc/xml/manual/debug_mode.xml: Adjust.
5395         * doc/xml/manual/prerequisites.xml: Adjust.
5396         * doc/Makefile.am (xml_sources): Add dot files,
5397         documentation_hacking.xml.
5398         * doc/Makefile.in: Regenerate.
5400         * doc/xml/manual/build_hacking.xml: Use absolute paths for images.
5401         * doc/xml/images/confdeps.pdf: Add.
5403         * doc/html/*: Regenerate.
5405 2011-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
5407         * doc/xml/gnu/fdl-1.2.xml: Remove.
5408         * doc/xml/gnu/gpl-2.0.xml: Remove.
5409         * doc/Makefile.am: Update.
5410         * doc/Makefile.in: Regenerate.
5412 2011-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
5414         PR libstdc++/47628
5415         * include/bits/stl_tree.h (_Rb_tree::erase(iterator), erase(iterator,
5416         iterator)): Add back in C++03 mode.
5417         * testsuite/23_containers/map/modifiers/erase/47628.cc: New.
5418         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Likewise.
5420 2011-02-07  Benjamin Kosnik  <bkoz@redhat.com>
5422         PR libstdc++/47560 try two
5423         * config/os/hpux/os_defines.h: Guard for C++.
5425 2011-02-07  Gerald Pfeifer  <gerald@pfeifer.com>
5427         * doc/xml/faq.xml: Adjust link to bug database.
5428         Remove old item on broken header files.
5430 2011-02-04  Benjamin Kosnik  <bkoz@redhat.com>
5432         * include/bits/regex_error.h (__throw_regex_error): Not inline.
5433         * src/functexcept.cc: Add definition.
5434         * config/abi/pre/gnu.ver: Export.
5436 2011-02-04  Ralf Corsépius <ralf.corsepius@rtems.org>
5438         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*.
5439         * configure: Regenerate.
5441 2011-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
5443         PR libstdc++/46914
5444         * include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
5445         _ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
5446         avoid name conflicts.
5448 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
5450         PR libstdc++/47560
5451         * config/os/hpux/os_defines.h: Remove use of macros on namespace.
5453 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
5455         * scripts/run_doxygen: Allow doxygen 1.7.0 again.
5456         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): Re-enable.
5457         (COMPACT_LATEX): Enable.
5459         * include/profile/impl/profiler_container_size.h: Adjust doxygen markup.
5460         * include/profile/impl/profiler_hash_func.h: Same.
5461         * include/bits/hashtable.h: Same.
5462         * include/backward/auto_ptr.h: Same.
5463         * include/backward/strstream: Same.
5464         * include/backward/backward_warning.h: Same.
5465         * include/backward/binders.h: Same.
5467 2011-02-01  Gerald Pfeifer  <gerald@pfeifer.com>
5469         * doc/xml/manual/debug.xml: Use GDB instead of gdb.
5470         Adjust link to GDB manual.
5472 2011-01-31  Benjamin Kosnik  <bkoz@redhat.com>
5474         * include/bits/c++config (_GLIBCXX_DEPRECATED): To
5475         _GLIBCXX_USE_DEPRECATED.
5476         (_GLIBCXX_DEPRECATED_ATTR): To _GLIBCXX_DEPRECATED.
5477         * doc/xml/manual/using.xml: Same.
5478         * include/std/memory: Same.
5479         * include/std/streambuf: Same.
5480         * include/bits/shared_ptr.h: Same.
5481         * include/bits/unique_ptr.h: Same.
5482         * include/bits/shared_ptr_base.h: Same.
5483         * include/bits/stl_function.h: Same.
5484         * include/tr1/shared_ptr.h: Same.
5485         * include/backward/auto_ptr.h: Same.
5486         * include/backward/binders.h: Same.
5488 2011-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
5490         * doc/html/ext/lwg-active.html: Update to Revision D73.
5491         * doc/html/ext/lwg-closed.html: Likewise.
5492         * doc/html/ext/lwg-defects.html: Likewise.
5493         * doc/xml/manual/intro.xml: Update status of issues 408, 539, 865.
5495 2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>
5497         PR libstdc++/36104 part four
5498         * include/bits/c++config (_GLIBCXX_STD): Remove.
5499         (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
5500         (_GLIBCXX_P): Now _GLIBCXX_STD_A.
5501         (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
5502          _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
5503         (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
5504          _GLIBCXX_INLINE_PROFILE): Remove.
5505         (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
5506         (_GLIBCXX_END_NAMESPACE): Remove.
5507         (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
5508         (_GLIBCXX_END_NESTED_NAMESPACE): Remove.
5509         (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
5510         (_GLIBCXX_END_NAMESPACE_ALGO): Add.
5511         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
5512         (_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
5513         (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
5514         (_GLIBCXX_END_NAMESPACE_VERSION): Add.
5515         (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
5516         (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
5517         (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
5518         * include/*: Use new macros for namespace scope.
5519         * config/*: Same.
5520         * src/*: Same.
5522         * src/Makefile.am (sources): Remove debug_list.cc, add
5523         compatibility-debug_list-2.cc.
5524         (parallel_sources): Remove parallel_list.cc, add
5525         compatibility-parallel_list-2.cc.
5526         (compatibility-parallel_list-2.[o,lo]): New rule.
5527         * src/Makefile.in: Regenerate.
5528         * src/debug_list.cc: Remove.
5529         * src/parallel_list.cc: Remove.
5530         * src/compatibility-list-2.cc: New.
5531         * src/compatibility-debug_list-2.cc: New.
5532         * src/compatibility-parallel_list-2.cc: New.
5534         * doc/doxygen/user.cfg.in: Adjust macros.
5536         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
5537         * testsuite/20_util/declval/requirements/1_neg.cc: Same.
5538         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
5539         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
5540         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
5541         * testsuite/20_util/forward/c_neg.cc: Same.
5542         * testsuite/20_util/forward/f_neg.cc: Same.
5543         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
5544         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
5545         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
5546         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
5547         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
5548         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
5549         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
5550         * testsuite/23_containers/deque/requirements/dr438/
5551         constructor_1_neg.cc: Same.
5552         * testsuite/23_containers/deque/requirements/dr438/
5553         constructor_2_neg.cc: Same.
5554         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
5555         * testsuite/23_containers/forward_list/capacity/1.cc: Same.
5556         * testsuite/23_containers/forward_list/requirements/dr438/
5557         assign_neg.cc: Same.
5558         * testsuite/23_containers/forward_list/requirements/dr438/
5559         constructor_1_neg.cc: Same.
5560         * testsuite/23_containers/forward_list/requirements/dr438/
5561         constructor_2_neg.cc: Same.
5562         * testsuite/23_containers/forward_list/requirements/dr438/
5563         insert_neg.cc: Same.
5564         * testsuite/23_containers/list/capacity/29134.cc: Same.
5565         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
5566         * testsuite/23_containers/list/requirements/dr438/
5567         constructor_1_neg.cc: Same.
5568         * testsuite/23_containers/list/requirements/dr438/
5569         constructor_2_neg.cc: Same.
5570         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
5571         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
5572         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
5573         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
5574         * testsuite/23_containers/vector/requirements/dr438/
5575         constructor_1_neg.cc: Same.
5576         * testsuite/23_containers/vector/requirements/dr438/
5577         constructor_2_neg.cc: Same.
5578         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
5579         * testsuite/25_algorithms/sort/35588.cc: Same.
5580         * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
5581         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
5582         * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
5583         * testsuite/ext/profile/profiler_algos.cc: Same.
5584         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
5585         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
5586         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
5587         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
5588         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
5590 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
5592         * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification.
5593         Improve description of one such reference.
5595 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
5597         * doc/xml/manual/codecvt.xml: Fix link to The Austin Common
5598         Standards Revision Group.
5599         * doc/xml/manual/locale.xml: Ditto.
5600         * doc/xml/manual/messages.xml: Ditto.
5601         * doc/xml/manual/using_exceptions.xml: Ditto.
5603 2011-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
5605         * include/bits/atomic_base.h: Do not include <stddef.h>.
5606         (kill_dependency): Uglify ret.
5608 2011-01-26  Johannes Singler  <singler@kit.edu>
5610         * include/parallel/numeric (inner_product, partial_sum):
5611         Qualify subsequent call with __gnu_parallel instead of
5612         _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
5613         * include/parallel/algobase.h (equal): Likewise.
5614         * include/parallel/algo.h (find_first_of, search_n, merge,
5615         nth_element, partial_sort, max_element, min_element): Likewise.
5616         * testsuite/25_algorithms/headers/algorithm/
5617         parallel_algorithm_mixed1.cc (main): Add respective test cases.
5618         * testsuite/25_algorithms/headers/algorithm/
5619         parallel_algorithm_mixed2.cc (main): Likewise.
5620         * testsuite/26_numerics/headers/numeric/
5621         parallel_numeric_mixed1.cc (main): Likewise.
5622         * testsuite/26_numerics/headers/numeric/
5623         parallel_numeric_mixed2.cc (main): Likewise.
5625 2011-01-24  Graham Reed  <greed@pobox.com>
5627         PR libstdc++/47387
5628         * config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
5629         provided.
5631 2011-01-24  Johannes Singler  <singler@kit.edu>
5633         PR libstdc++/47433
5634         * include/parallel/losertree.h
5635         (_LoserTree<>::__delete_min_insert):
5636         Do not qualify swap with std:: for value type,
5637         but include a using directive instead.
5638         (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
5639         * include/parallel/balanced_quicksort.h (__qsb_divide):
5640         Use std::iter_swap instead of std::swap.
5641         (__qsb_local_sort_with_helping): Likewise.
5642         * include/parallel/partition.h (__parallel_partition):
5643         Likewise. (__parallel_nth_element): Likewise.
5645 2011-01-24  Johannes Singler  <singler@kit.edu>
5647         PR libstdc++/47437
5648         * include/parallel/multiway_merge.h (_UnguardedIterator):
5649         Remove useless "mutable" from reference declaration.
5651 2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>
5653         * include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove.
5654         * include/debug/safe_sequence.h: Same.
5655         * include/debug/safe_iterator.h: Same.
5656         * include/std/forward_list: Same.
5657         * include/std/deque: Same.
5658         * include/std/list: Same.
5659         * include/std/random: Same.
5660         * include/std/streambuf: Same.
5661         * include/std/fstream: Same.
5662         * include/std/istream: Same.
5663         * include/std/string: Same.
5664         * include/std/ostream: Same.
5665         * include/std/sstream: Same.
5666         * include/ext/vstring.h: Same.
5667         * include/bits/basic_ios.h: Same.
5668         * include/bits/locale_classes.h: Same.
5669         * include/bits/locale_facets.h: Same.
5670         * include/bits/valarray_array.h: Same.
5671         * include/bits/locale_facets_nonio.h: Same.
5672         * include/tr1/random: Same.
5674 2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
5676         * doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.
5678 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
5680         PR libstdc++/36104 part three
5681         * src/hashtable_c++0x.cc: Adjust namespace macros.
5682         * testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
5683         * config/abi/pre/gnu-versioned-namespace.ver: Update.
5685 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
5687         * include/ext/pb_ds/detail/resize_policy/
5688         hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
5689         * include/ext/pb_ds/detail/pat_trie_/
5690         constructors_destructor_fn_imps.hpp: Same.
5691         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
5692         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
5693         * include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.
5695         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
5696         iterations downward when testing in debug mode.
5697         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
5698         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
5699         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
5700         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
5701         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
5702         * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
5703         reduce in debug mode.
5705 2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>
5707         PR libstdc++/36104 part two
5708         * include/bits/hashtable.h: Revert to non-nested macro usage.
5709         * include/bits/hashtable_policy.h: Same.
5711 2011-01-19  Graham Reed  <greed@pobox.com>
5713         PR libstdc++/47354
5714         * src/bitmap_allocator.cc (free_list::_M_get): Lock mutex.
5716 2011-01-18  Benjamin Kosnik  <bkoz@redhat.com>
5718         * doc/xml/images/confdeps.png: Regenerate.
5720         * include/std/chrono (duration): Mark copy constructor constexpr.
5721         * testsuite/20_util/duration/cons/constexpr.cc: Add test.
5723 2011-01-18  Paolo Carlini  <paolo.carlini@oracle.com>
5725         * include/bits/unique_ptr.h (default_delete<>::default_delete()):
5726         Declare defaulted per DR 1517.
5727         * testsuite/util/testsuite_common_types.h
5728         (constexpr_defaulted_default_constructible): Add.
5729         * testsuite/20_util/default_delete/cons/constexpr.cc: Use it.
5731 2011-01-17  Paolo Carlini  <paolo.carlini@oracle.com>
5733         * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
5734         Implement DR 1198.
5735         * include/bits/stl_stack.h (stack<>::swap): Likewise.
5737 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5739         PR libstdc++/47323
5740         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
5741         Only test wregex when _GLIBCXX_USE_WCHAR_T is defined.
5743 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5745         PR libstdc++/47320
5746         * testsuite/18_support/numeric_limits/lowest.cc:
5747         Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined.
5749 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5751         PR libstdc++/47321
5752         * testsuite/21_strings/basic_string/requirements/typedefs.cc:
5753         Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined.
5755 2011-01-16  François Dumont  <francois.cppdevs@free.fr>
5757         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Move
5758         to this. Use _neg suffix.
5759         * testsuite/23_containers/forward_list/debug/erase_after1.cc: ...from
5760         this.
5761         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
5762         Same.
5763         * testsuite/23_containers/forward_list/debug/erase_after2.cc: Same.
5764         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
5765         Same.
5766         * testsuite/23_containers/forward_list/debug/erase_after3.cc: Same.
5767         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
5768         Same.
5769         * testsuite/23_containers/forward_list/debug/erase_after4.cc: Same.
5770         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
5771         Same.
5772         * testsuite/23_containers/forward_list/debug/erase_after5.cc: Same.
5773         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
5774         Same.
5775         * testsuite/23_containers/forward_list/debug/erase_after6.cc: Same.
5776         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
5777         Same.
5778         * testsuite/23_containers/forward_list/debug/erase_after7.cc: Same.
5779         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
5780         Same.
5781         * testsuite/23_containers/forward_list/debug/erase_after8.cc: Same.
5782         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
5783         Same.
5784         * testsuite/23_containers/forward_list/debug/erase_after9.cc: Same.
5785         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
5786         Same.
5787         * testsuite/23_containers/forward_list/debug/insert_after1.cc: Same.
5788         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
5789         Same.
5790         * testsuite/23_containers/forward_list/debug/insert_after2.cc: Same.
5791         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
5792         Same.
5793         * testsuite/23_containers/forward_list/debug/insert_after3.cc: Same.
5794         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
5795         Same.
5796         * testsuite/23_containers/forward_list/debug/splice_after1.cc: Same.
5797         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
5798         Same.
5799         * testsuite/23_containers/forward_list/debug/splice_after2.cc: Same.
5800         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
5801         Same.
5802         * testsuite/23_containers/forward_list/debug/splice_after3.cc: Same.
5803         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
5804         Same.
5805         * testsuite/23_containers/forward_list/debug/splice_after4.cc: Same.
5807 2011-01-14  Benjamin Kosnik  <bkoz@redhat.com>
5809         PR libstdc++/36104
5810         * include/Makefile.am (bits_sup_headers, stamp-bits-sup): New.
5811         * include/Makefile.in: Regenerate.
5812         * libsupc++/Makefile.am (std_HEADERS, bits_HEADERS): New.
5813         (install-stdHEADERS, install-bitsHEADERS): New.
5814         * libsupc++/Makefile.in: Regenerate.
5816         * include/bits/c++config: Update for inline namespaces.
5817         * libsupc++/cxxabi-forced.h: To...
5818         * libsupc++/cxxabi_forced.h: ...this.
5819         * libsupc++/hash_bytes.h: Separate file.
5820         * libsupc++/typeinfo: Use it.
5821         * libsupc++/exception: Adjust for bits subdirectory.
5822         * libsupc++/eh_aux_runtime.cc: Same.
5823         * libsupc++/eh_ptr.cc: Same.
5824         * libsupc++/new_op.cc: Same.
5825         * libsupc++/exception_defines.h: Same.
5826         * libsupc++/nested_exception.h: Same.
5827         * libsupc++/eh_terminate.cc: Same.
5828         * libsupc++/vec.cc: Same.
5829         * libsupc++/vterminate.cc: Same.
5830         * libsupc++/exception_ptr.h: Same.
5831         * libsupc++/eh_personality.cc: Same.
5832         * libsupc++/eh_call.cc: Same.
5833         * libsupc++/new_opnt.cc: Same.
5834         * libsupc++/hash_bytes.cc: Same.
5835         * config/cpu/arm/cxxabi_tweaks.h: Same.
5836         * config/cpu/generic/cxxabi_tweaks.h: Same.
5837         * libsupc++/cxxabi.h: Same. Consolidate _GLIBCXX_NOTHROW defines.
5838         * include/std/bitset: Same.
5839         * include/ext/vstring.tcc: Same.
5840         * include/bits/hashtable.h: Same.
5841         * include/bits/functional_hash.h: Same.
5842         * include/bits/hashtable_policy.h: Same.
5843         * include/bits/basic_string.h: Same.
5844         * include/bits/istream.tcc: Same.
5845         * include/bits/ostream.tcc: Same.
5846         * include/bits/algorithmfwd.h: Same.
5847         * include/bits/basic_string.tcc: Same.
5848         * include/bits/ostream_insert.h: Same.
5849         * include/bits/fstream.tcc: Same.
5850         * include/bits/functexcept.h: Same.
5852         * doc/doxygen/user.cfg.in: Adjust names.
5854         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
5856 2011-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
5858         * testsuite/25_algorithms/is_permutation/check_type.cc: Minor
5859         tweaks.
5860         * testsuite/25_algorithms/is_permutation/1.cc: Cosmetic changes.
5862 2011-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
5864         * testsuite/25_algorithms/is_permutation/check_type.cc: New.
5865         * testsuite/25_algorithms/is_permutation/requirements/
5866         explicit_instantiation/2.cc: Likewise.
5867         * testsuite/25_algorithms/is_permutation/requirements/
5868         explicit_instantiation/pod.cc: Likewise.
5869         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
5871 2011-01-13  John Lakos  <jlakos@bloomberg.net>
5872             Pablo Halpern  <phalpern@halpernwightsoftware.com>
5873             Paolo Carlini  <paolo.carlini@oracle.com>
5875         * include/bits/stl_algo.h (is_permutation): Add, per N3068.
5876         * include/bits/algorithmfwd.h: Add.
5878 2011-01-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
5880         PR libstdc++/47045
5881         * config/os/bsd/netbsd/ctype_base.h: Use new macros based on version.
5883 2011-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
5885         * aclocal.m4: Regenerate.
5887 2011-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
5889         PR libstdc++/47185
5890         * src/placeholders.cc: New.
5891         * src/Makefile.am: Adjust.
5892         * src/Makefile.in: Regenerate.
5893         * include/std/functional (placeholders::_1, _2, ..., _29): Declare
5894         extern.
5895         * config/abi/pre/gnu.ver: Export.
5897 2011-01-05  François Dumont  <francois.cppdevs@free.fr>
5899         * include/debug/safe_base.h (_Safe_iterator_base::_M_unlink): New.
5900         * include/src/debug.cc: Use latter
5901         * include/debug/forward_list (forward_list<>::_M_swap):  Fix to
5902         correctly handle before_begin iterators.
5903         * testsuite/23_containers/forward_list/debug/swap.cc: Remove now
5904         useless _GLIBCXX_DEBUG checks.
5906 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
5908         PR libstdc++/47145
5909         * configure.ac (AC_CHECK_FILE): Replaced by test -f.
5910         * configure: Regenerated.
5912 2011-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
5914         PR libstdc++/46922
5915         * config/abi/pre/gnu.ver: Export std::bad_function_call symbols.
5918 Copyright (C) 2011 Free Software Foundation, Inc.
5920 Copying and distribution of this file, with or without modification,
5921 are permitted in any medium without royalty provided the copyright
5922 notice and this notice are preserved.