OSDN Git Service

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