OSDN Git Service

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