OSDN Git Service

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