OSDN Git Service

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