OSDN Git Service

bce0be826f8d5e1d609a1e4296a914b89cf44a19
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2011-11-17  Jason Merrill  <jason@redhat.com>
2
3         * testsuite/21_strings/basic_string/cons/char/moveable2.cc
4         (tstring): Add defaulted move assignment.
5         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc
6         (tstring): Add defaulted move assignment.
7         * testsuite/util/testsuite_tr1.h (NoexceptMoveConsClass): Add
8         defaulted move assignment operator.
9         (NoexceptMoveAssignClass): Add defaulted move constructor.
10
11 2011-11-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
12
13         * doc/xml/manual/status_cxx2011.xml: Status of piecewise construction
14         and ios_base::failure.
15         * doc/xml/manual/backwards_compatibility.xml: List headers in
16         alphabetical order.
17
18 2011-11-16  Andrew MacLeod  <amacleod@redhat.com>
19
20         PR libstdc++/51102
21         * include/bits/atomic_base.h (ATOMIC_BOOL_LOCK_FREE,
22         ATOMIC_POINTER_LOCK_FREE): New. Add missing macros.
23
24 2011-11-15  Paolo Carlini  <paolo.carlini@oracle.com>
25
26         PR libstdc++/51142
27         * include/debug/unordered_map (unordered_map<>::erase(iterator),
28         unordered_multimap<>::erase(iterator)): Add, consistently with
29         LWG 2059.
30         * include/debug/unordered_set (unordered_set<>::erase(iterator),
31         unordered_multiset<>::erase(iterator)): Likewise.
32         * include/debug/map.h (map<>::erase(iterator)): Likewise.
33         * include/debug/multimap.h (multimap<>::erase(iterator)): Likewise.
34         * include/profile/map.h (map<>::erase(iterator)): Likewise.
35         * include/profile/multimap.h (multimap<>::erase(iterator)): Likewise.
36         * include/bits/hashtable.h (_Hashtable<>::erase(iterator)): Likewise.
37         * include/bits/stl_map.h (map<>::erase(iterator)): Likewise.
38         * include/bits/stl_multimap.h (multimap<>::erase(iterator)): Likewise.
39         * include/bits/stl_tree.h (_Rb_tree<>::erase(iterator)): Likewise.
40         * testsuite/23_containers/unordered_map/erase/51142.cc: New.
41         * testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise.
42         * testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise.
43         * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
44         * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
45         * testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise.
46         * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
47         * testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise.
48
49 2011-11-15  Jason Dick  <dickphd@gmail.com>
50
51         PR libstdc++/51133
52         * include/tr1/poly_hermite.tcc (__poly_hermite_recursion): Fix
53         wrong sign in recursion relation.
54
55 2011-11-14  Paolo Carlini  <paolo.carlini@oracle.com>
56
57         * include/c_global/cmath (frexp, modf, remquo): Do not mark constexpr,
58         not viable anyway due to the pointer parameter.
59
60 2011-11-13  Paolo Carlini  <paolo.carlini@oracle.com>
61
62         * include/c_global/cmath (atan2, fmod, pow, copysign, fdim,
63         fma, fmax, fmin, hypot, nextafter, remainder, remquo): Simplify
64         constraining on the return type.
65         * include/tr1/cmath (copysign, fdim, fma, fmax, fmin, hypot,
66         nextafter, remainder, remquo): Likewise.
67
68 2011-11-13  Gerald Pfeifer  <gerald@pfeifer.com>
69
70         * using.xml: Use GNU/Linux.
71
72 2011-11-12  Jason Merrill  <jason@redhat.com>
73
74         PR c++/51060
75         * testsuite/25_algorithms/max/1.cc (test01): Drop references.
76         * testsuite/25_algorithms/min/1.cc (test01): Drop references.
77         * testsuite/25_algorithms/minmax/1.cc (test01): Drop references.
78
79 2011-11-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
80
81         PR libstdc++/51083
82         * include/ext/type_traits.h (__promote): Only define __type member
83         for integral and floating point types, to prevent math functions
84         participating in overload resolution for other types.
85         (__promote_2, __promote_3, __promote_4): Use __promote in default
86         template argument values, so deduction only succeeds for integral and
87         floating point types.
88         * testsuite/26_numerics/cmath/51083.cc: New.
89         * testsuite/26_numerics/complex/51083.cc: New.
90         * testsuite/tr1/8_c_compatibility/cmath/51083.cc: New.
91         * testsuite/tr1/8_c_compatibility/complex/51083.cc: New.
92
93 2011-11-10  Andrew MacLeod  <amacleod@redhat.com>
94
95         PR middle-end/51038
96         * include/bits/atomic_base.h (atomic_thread_fence): Call built-in.
97         (atomic_signal_fence): Call built-in.
98         (test_and_set, clear): Call new atomic built-ins.
99
100 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
101
102         * include/bits/allocator.h (__shrink_to_fit_aux::_S_do_it): Create
103         the new object with the same allocator.
104         * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: New.
105
106 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
107
108         * include/profile/unordered_map: Add missing copy constructors.
109         * include/profile/unordered_set: Likewise.
110
111 2011-11-09  Dodji Seketeli  <dodji@redhat.com>
112
113         PR c++/51027
114         * include/ext/pointer.h (rebind): Append missing ';'.
115
116 2011-11-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
117
118         * include/bits/stl_vector.h (vector::_Alloc_traits): Make private.
119         * include/debug/vector: Add allocator-extended constructors, ensure
120         move assignment and swap have same allocator propagation semantics
121         and exceptions specification as base class.
122         * include/profile/vector: Likewise.
123         (vector::push_back(_Tp&&)): Forward argument as rvalue.
124         * testsuite/23_containers/vector/debug/alloc_prop.cc: New.
125         * doc/xml/manual/status_cxx2011.xml: Clarify status of container
126         requirements with respect to allocators.
127         (status.iso.200x): Add anchor for old ID to preserve existing links.
128
129 2011-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
130
131         * include/bits/shared_ptr_base.h (_Sp_counted_ptr): Make 'final'.
132         (_Sp_counted_deleter): Make 'final'. Use allocator_traits.
133         (_Sp_counted_ptr_inplace): Make 'final'. Use allocator_traits.
134         Derive from _Sp_counted_ptr instead of _Sp_counted_deleter to use EBO
135         for the allocator.
136         (__shared_count, __shared_ptr): Use allocator_traits.
137         * include/std/future (__future_base::_Result_alloc): Make 'final'. Use
138         allocator traits.
139         (__future_base::_Task_state): Make 'final'.
140         (__future_base::_Deferred_state): Likewise.
141         (__future_base::_Async_state): Likewise.
142         * testsuite/20_util/shared_ptr/cons/alloc_min.cc: New.
143         * testsuite/20_util/shared_ptr/creation/alloc_min.cc: New.
144         * testsuite/20_util/shared_ptr/creation/private.cc: New.
145         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
146         * testsuite/30_threads/packaged_task/cons/alloc_min.cc: New.
147         * testsuite/30_threads/promise/cons/alloc_min.cc: New.
148
149 2011-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
150
151         * acinclude.m4 ([GLIBCXX_ENABLE_VISIBILITY]): Rename to
152         [GLIBCXX_ENABLE_LIBSTDCXX_VISIBILITY], likewise for the
153         option itself, to --enable-libstdcxx-visibility.
154         * configure.ac: Adjust call.
155         * doc/xml/manual/configure.xml: Update.
156         * configure: Regenerate.
157
158 2011-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
159
160         * testsuite/29_atomics/headers/atomic/macros.cc: Avoid -Wall
161         warnings.
162         * testsuite/29_atomics/atomic/cons/user_pod.cc: Likewise.
163
164 2011-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
165
166         PR libstdc++/51018
167         * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
168         on netbsd.
169
170 2011-11-07  Aldy Hernandez  <aldyh@redhat.com>
171             Richard Henderson  <rth@redhat.com>
172
173         Merged from transactional-memory.
174
175         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_TM_1.
176         * libsupc++/eh_tm.cc: New file.
177         * libsupc++/unwind-cxx.h (__cxa_tm_cleanup): Declare.
178         * config/abi/pre/gnu.ver: Export __cxa_tm_cleanup.
179         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
180         * libsupc++/Makefile.am (sources): Add eh_tm.cc.
181         * libsupc++/Makefile.in: Rebuild.
182
183 2011-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
184
185         PR libstdc++/51018
186         * include/profile/impl/profiler_node.h (__stack_hash::
187         operator()(__stack_t)): Just use std::size_t everywhere.
188
189 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
190
191         * include/std/future (__future_base::_Ptr): Use alias-declaration.
192         (__is_same_pkgdtask): Rename to __constrain_pkgdtask and use decay
193         instead of remove_reference so that cv-quals are removed.
194
195 2011-11-07  Ed Smith-Rowland  <3dw4rd@verizon.net>
196
197         * include/precompiled/stdc++.h: Add cstdalign.
198
199 2011-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
200
201         * include/std/complex (complex<>::real(), complex<>::imag()):
202         Remove redundant const qualifiers.
203
204 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
205
206         * include/bits/ptr_traits.h (__rebind): Replace with...
207         (rebind): Implement using alias-declaration.
208         * include/ext/pointer.h (__rebind): Replace with...
209         (rebind): Implement using alias-declaration.
210         * include/bits/alloc_traits.h (__rebind_alloc, __rebind_traits):
211         Replace with...
212         (rebind_alloc, rebind_traits): Implement using alias-declaration.
213         * include/ext/alloc_traits.h (rebind): Use rebind_alloc instead of
214         __rebind_alloc.
215         * include/std/scoped_allocator (rebind): Likewise.
216
217 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
218
219         * include/std/mutex (call_once): Store closure in __once_functor
220         as bound function wrapper might not be copyable.
221
222 2011-11-07  Andrew MacLeod  <amacleod@redhat.com>
223
224         * include/bits/atomic_base.h (atomic_thread_fence): Revert.
225         (atomic_signal_fence): Revert.
226
227 2011-11-07  Andrew MacLeod  <amacleod@redhat.com>
228
229         * include/bits/atomic_base.h (atomic_thread_fence): Call builtin.
230         (atomic_signal_fence): Call builtin.
231         (atomic_flag::test_and_set): Call __atomic_exchange when it is lockfree,
232         otherwise fall back to call __sync_lock_test_and_set.
233         (atomic_flag::clear): Call __atomic_store when it is lockfree,
234         otherwise fall back to call __sync_lock_release.
235
236 2011-11-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
237
238         PR bootstrap/50982
239         * include/Makefile.am (${host_builddir}/gthr-posix.h): Reflect
240         gthr-posix.h move.
241         * include/Makefile.in: Regenerate.
242
243 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
244
245         * acinclude.m4 (GLIBCXX_CHECK_SC_NPROC_ONLN): Define.
246         (GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP): Define.
247         (GLIBCXX_CHECK_SYSCTL_HW_NCPU): Define.
248         * configure.ac: Use new checks.
249         * configure: Regenerate.
250         * config.h.in: Regenerate.
251         * src/thread.cc: Check new config macros.
252         * testsuite/lib/libstdc++.exp: Likewise.
253
254 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
255
256         * config/abi/pre/gnu.ver: Fix exports for string::pop_back.
257
258 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
259
260         * acinclude.m4: Check for <stdalign.h>
261         * configure: Regenerate.
262         * config.h.in: Likewise.
263         * include/Makefile.am: Add <cstdalign>.
264         * include/Makefile.in: Regenerate.
265         * include/c_global/cstdalign: New.
266         * testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New.
267         * doc/xml/manual/backwards_compatibility.xml: Update.
268         * doc/xml/manual/status_cxx2011.xml: Update.
269
270 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
271
272         PR libstdc++/50982
273         * include/std/mutex (__once_proxy): Use void parameter list to
274         work on implicit extern "C" systems.
275
276 2011-11-07  Xinliang David Li  <davidxl@google.com>
277
278         * include/backward/hashtable.h: Make __stl_prime_list
279         in comdat section.
280
281 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
282
283         * include/bits/basic_string.h (basic_string::at): Move adjacent to other
284         overload.
285         (basic_string::pop_back): Define.
286         * include/debug/string (__gnu_debug::basic_string::pop_back): Likewise.
287         * include/ext/vstring.h (__versa_string::pop_back): Likewise.
288         * config/abi/pre/gnu.ver: Add new symbols.
289         * testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New.
290         * testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New.
291         * testsuite/21_strings/basic_string/range_access.cc: Split to ...
292         * testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ...
293         * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here.
294         * testsuite/ext/vstring/modifiers/char/pop_back.cc: New.
295         * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New.
296
297 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
298
299         * doc/xml/manual/backwards_compatibility.xml: Fix autoconf tests for
300         C++11 compiler features and library headers. Add stable id
301         attributes. Use <filename> element for headers and surround in angle
302         brackets. Use <classname> for classes.
303         * doc/html/*: Regenerate.
304
305 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
306
307         * doc/xml/manual/status_cxx2011.xml: Document <cuchar> and
308         <cstdalign> as missing.
309
310 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
311
312         * doc/xml/faq.xml: Replace references to C++0x with C++11.
313         * doc/xml/manual/intro.xml: Likewise.
314         * doc/xml/manual/backwards_compatibility.xml: Likewise.
315         * doc/xml/manual/shared_ptr.xml: Likewise.
316         * doc/xml/manual/configure.xml: Likewise.
317         * doc/xml/manual/evolution.xml: Likewise.
318         * doc/xml/manual/using.xml: Likewise.
319         * doc/xml/manual/strings.xml: Likewise.
320         * doc/xml/manual/debug_mode.xml: Likewise.
321         * doc/xml/manual/policy_data_structures.xml: Likewise.
322         * doc/xml/manual/extensions.xml: Likewise.
323         * doc/xml/manual/diagnostics.xml: Likewise.
324         * doc/xml/manual/test.xml: Likewise.
325         * doc/xml/manual/status_cxx200x.xml: Likewise, and rename to...
326         * doc/xml/manual/status_cxx2011.xml: Here.
327         * doc/Makefile.am: Rename status_cxx200x.xml.
328         * doc/Makefile.in: Regenerate.
329         * doc/html/*: Regenerate.
330
331 2011-11-06  François Dumont <fdumont@gcc.gnu.org>
332
333         * testsuite/performance/23_containers/insert_erase/41975.cc: Add
334         tests to check performance with or without cache of hash code and with
335         string type that has a costlier hash functor than int type.
336
337 2011-11-06  Benjamin Kosnik  <bkoz@redhat.com>
338             Andrew MacLeod  <amacleod@redhat.com>
339
340         Merged from cxx-mem-model.
341
342         * include/Makefile.am (bits_headers): Remove atomic_0.h, atomic_2.h.
343         * include/Makefile.in: Regenerate.
344         * src/Makefile.am (sources): Rename atomic.cc to
345         compatibility-atomic-c++0x.cc.
346         * src/Makefile.in: Regenerate.
347         * include/bits/atomic_0.h: Remove.
348         * include/bits/atomic_2.h: Incorporate into...
349         * include/bits/atomic_base.h: ...this.  Use new __atomic routines.
350         * include/std/atomic: Add generic atomic calls to basic atomic class.
351         * src/atomic.cc: Move...
352         * src/compatibility-atomic-c++0x.cc: ...here.
353         * src/compatibility-c++0x.cc: Tweak.
354         * testsuite/29_atomics/atomic/cons/user_pod.cc: Fix.
355         * testsuite/29_atomics/atomic/requirements/explicit_instantiation/1.cc:
356           Same.
357         * testsuite/29_atomics/headers/atomic/macros.cc: Same.
358
359 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
360
361         * doc/xml/manual/test.xml: Fix dg-warning examples.
362
363 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
364
365         PR libstdc++/44436
366         * doc/xml/manual/status_cxx200x.xml: Document emplace members are
367         missing.
368
369 2011-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
370
371         PR libstdc++/49894
372         PR bootstrap/50982
373         * include/std/mutex (once_flag): Use NSDMI.
374
375 2011-11-04  Benjamin Kosnik  <bkoz@redhat.com>
376
377         * scripts/run_doxygen: Fix sed quoting.
378
379 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
380
381         * doc/doxygen/doxygroups.cc: Add markup for namespace tr2.
382         * include/tr2/bool_set: Adjust doxygen markup.
383         * include/tr2/dynamic_bitset: Same.
384         * include/tr2/type_traits: Same.
385
386 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
387
388         * doc/html/*: Regenerate.
389
390 2011-11-02  Richard B. Kreckel  <kreckel@ginac.de>
391             Paolo Carlini  <paolo.carlini@oracle.com>
392
393         PR libstdc++/50880
394         * include/std/complex (__complex_acosh): Fix in a better way,
395         use Kahan's formula.
396         * include/tr1/complex (__complex_acosh): Likewise.
397
398 2011-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
399
400         PR libstdc++/50951
401         * include/bits/random.tcc (operator<<(basic_ostream<>&,
402         const mersenne_twister_engine<>&): Output _M_p too.
403         (operator<<(basic_ostream<>&, const
404         subtract_with_carry_engine<>&): Likewise.
405         (operator>>(basic_istream<>&, mersenne_twister_engine<>&):
406         Reload it.
407         (operator>>(basic_istream<>&, subtract_with_carry_engine<>&):
408         Likewise.
409         * include/bits/random.h (mersenne_twister_engine<>::operator==):
410         Compare _M_p too.
411         (subtract_with_carry_engine<>::operator==): Compare _M_carry
412         and _M_p too.
413         (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too.
414         * testsuite/26_numerics/random/independent_bits_engine/
415         operators/serialize.cc: Extend.
416         * testsuite/26_numerics/random/subtract_with_carry_engine/
417         operators/serialize.cc: Likewise.
418         * testsuite/26_numerics/random/discard_block_engine/
419         operators/serialize.cc: Likewise.
420         * testsuite/26_numerics/random/mersenne_twister_engine/
421         operators/serialize.cc: Likewise.
422         * testsuite/26_numerics/random/linear_congruential_engine/
423         operators/serialize.cc: Likewise.
424         * testsuite/26_numerics/random/shuffle_order_engine/
425         operators/serialize.cc: Likewise.
426
427 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
428
429         * acinclude.m4 (GLIBCXX_CONFIGURE): Determine and substitute
430         toplevel_builddir.
431         (GLIBCXX_ENABLE_THREADS): Remove glibcxx_thread_h,
432         HAVE_GTHR_DEFAULT, enable_thread.
433         (GLIBCXX_CHECK_GTHREADS): Reflect gthr move to libgcc.
434         * include/Makefile.am (thread_host_headers): Remove
435         ${host_builddir}/gthr-tpf.h.
436         (${host_builddir}/gthr.h): Reflect gthr move to libgcc.
437         Use $<.
438         (${host_builddir}/gthr-single.h): Likewise.
439         (${host_builddir}/gthr-posix.h): Likewise.
440         (${host_builddir}/gthr-tpf.h): Remove.
441         (${host_builddir}/gthr-default.h): Likewise.
442         * configure, config.h.in: Regenerate.
443         * Makefile.in, doc/Makefile.in, include/Makefile.in,
444         libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
445         src/Makefile.intestsuite/Makefile.in: Regenerate.
446
447 2011-11-02  Benjamin Kosnik  <bkoz@redhat.com>
448
449         * include/bits/c++config: Add tr2 to versioned namespaces.
450         * scripts/run_doxygen: Adjust generated man files as well.
451         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
452
453 2011-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
454
455         * include/std/future (promise): Add constructors for uses-allocator
456         construction from rvalue promise.
457         (packaged_task): Implement LWG 2067. Add additional constructors for
458         uses-allocator construction.
459         * testsuite/30_threads/packaged_task/cons/3.cc: New.
460         * testsuite/30_threads/packaged_task/cons/alloc2.cc: New.
461         * testsuite/30_threads/promise/cons/alloc2.cc: New.
462
463 2011-10-31  Jason Merrill  <jason@redhat.com>
464
465         * include/Makefile.am (install-freestanding-headers): Install
466         c++0x_warning.h.
467         * libsupc++/initializer_list: Include it.
468
469 2011-10-31  Gerald Pfeifer  <gerald@pfeifer.com>
470
471         * acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.
472         * configure: Regenerate.
473
474 2011-10-31  Jason Merrill  <jason@redhat.com>
475
476         PR c++/50920
477         * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11.
478
479 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
480
481         * prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux.
482         Remove an obsolete reference to a Red Hat release we do not
483         support any longer.
484         Refer to Debian GNU/Linux.
485
486 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
487
488         * faq.xml (Who's in charge of it?): Refer to the Linux kernel
489         instead of just Linux.
490         (How do I install libstdc++?): Refer to GNU/Linux instead of
491         just Linux.
492
493 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
494
495         * testsuite/30_threads/condition_variable_any/50862.cc: Trivial
496         formatting fixes.
497
498 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
499
500         * testsuite/23_containers/unordered_map/operations/count.cc: New.
501         * testsuite/23_containers/multimap/operations/count.cc: Likewise.
502         * testsuite/23_containers/set/operations/count.cc: Likewise.
503         * testsuite/23_containers/unordered_multimap/operations/count.cc:
504         Likewise.
505         * testsuite/23_containers/unordered_set/operations/count.cc: Likewise.
506         * testsuite/23_containers/multiset/operations/count.cc: Likewise.
507         * testsuite/23_containers/unordered_multiset/operations/count.cc:
508         Likewise.
509         * testsuite/23_containers/map/operations/count.cc: Likewise.
510
511 2011-10-28  Richard B. Kreckel  <kreckel@ginac.de>
512
513         * include/std/complex (__complex_acosh): Just use '< _Tp()'.
514         * include/tr1/complex (__complex_acosh): Likewise.
515
516 2011-10-27  Richard B. Kreckel  <kreckel@ginac.de>
517             Paolo Carlini  <paolo.carlini@oracle.com>
518
519         PR libstdc++/50880
520         * include/std/complex (__complex_acosh): Fix for __z.real() < 0.
521         * include/tr1/complex (__complex_acosh): Likewise.
522         * testsuite/26_numerics/complex/50880.cc: New.
523         * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
524
525 2011-10-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
526
527         PR libstdc++/50862
528         * include/std/condition_variable (condition_variable_any::wait): Avoid
529         terminating if relocking user mutex throws during stack-unwinding.
530         * testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require.
531
532 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
533
534         * include/std/condition_variable (condition_variable_any): Remove
535         unused native_handle_type typedef.
536         * src/condition_variable.cc (condition_variable): Add missing noexcept
537         specifications.
538         * testsuite/30_threads/condition_variable_any/requirements/
539         typedefs.cc: Remove.
540
541 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
542
543         PR libstdc++/50862
544         * include/std/condition_variable (condition_variable_any::wait): Fix
545         deadlock and ensure _Lock::lock() is called on exit.
546         (condition_variable_any::native_handle): Remove, as per LWG 1500.
547         * testsuite/30_threads/condition_variable_any/50862.cc: New.
548
549 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
550
551         PR libstdc++/49894
552         * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
553         base classes to manage construction/destruction of native mutexes,
554         using NSDMI when INIT macros are defined.
555         (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
556         new base classes.
557         * include/std/condition_variable (condition_variable): Use NSDMI when
558         INIT macro is defined. Use noexcept.
559         * src/condition_variable.cc (condition_variable): Explicitly-default
560         constructor/destructor when using NSDMI. Use noexcept.
561         (condition_variable_any): Likewise.
562
563 2011-10-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
564
565         * testsuite/30_threads/async/49668.cc: Add missing dg-require.
566         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
567
568 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
569
570         PR libstdc++/50834
571         * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
572
573 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
574
575         PR libstdc++/50196
576         * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
577         * configure: Regenerate.
578         * include/std/mutex (timed_mutex, recursive_timed_mutex): Define
579         conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
580         * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
581         * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
582         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
583         Use dg-require-gthreads-timed instead of dg-require-gthreads.
584         * testsuite/30_threads/recursive_timed_mutex/native_handle/
585         typesizes.cc: Likewise.
586         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
587         Likewise.
588         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
589         Likewise.
590         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
591         Likewise.
592         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
593         Likewise.
594         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
595         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
596         Likewise.
597         * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
598         Likewise.
599         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
600         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
601         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
602         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
603         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
604         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
605         Likewise.
606         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
607         Likewise.
608         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
609         Likewise.
610         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
611         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
612         Likewise.
613         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
614         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
615         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
616         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
617         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
618         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
619         * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
620         Likewise.
621         * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
622         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
623         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
624         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
625         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
626         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
627         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
628         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
629         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
630         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
631         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
632         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
633
634 2011-10-19  Ed Smith-Rowland  <3dw4rd@verizon.net>
635
636         * include/tr2/bool_set (bool_set): New.
637         * include/tr2/bool_set.tcc: New.
638         * include/tr2/dynamic_bitset (dynamic_bitset): New.
639         * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
640         * include/Makefile.am: Add files.
641         * include/Makefile.in: Regenerate.
642
643 2011-10-19  Benjamin Kosnik  <bkoz@redhat.com>
644
645         * doc/doxygen/user.cfg.in: Add tr2 files.
646         * testsuite/tr2/headers/all.cc: New.
647         * testsuite/tr2/headers/using_namespace_std_tr2.cc: New.
648
649         * include/tr2/type_traits: Tweak.
650
651 2011-10-18  Jason Merrill  <jason@redhat.com>
652
653         PR c++/50500
654         * include/bits/shared_ptr.h: Default copy ctor and assignment.
655         * testsuite/util/testsuite_allocator.h: Define copy assignment.
656         * testsuite/util/testsuite_rvalref.h: Default copy assignment.
657         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags.
658
659 2011-10-17  Michael Spertus  <mike_spertus@symantec.com>
660
661         * include/tr2/type_traits (bases, direct_bases, typelist): New.
662
663 2011-10-17  Benjamin Kosnik  <bkoz@redhat.com>
664
665         * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes.
666         * libstdc++-v3/include/Makefile.in: Regenerate.
667
668         * scripts/create_testsuite_files: Search tr2 directory.
669         * testsuite/libstdc++-dg/conformance.exp: Same.
670
671         * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New.
672         * testsuite/tr2/bases/requirements/typedefs.cc: New.
673         * testsuite/tr2/bases/value.cc: New.
674         * testsuite/tr2/direct_bases/requirements/
675         explicit_instantiation.cc: New.
676         * testsuite/tr2/direct_bases/requirements/typedefs.cc: New.
677         * testsuite/tr2/direct_bases/value.cc: New.
678
679 2011-10-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
680
681         PR bootstrap/50715
682         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate
683         __cxa_get_exception_ptr.
684
685 2011-10-14  François Dumont  <francois.cppdevs@free.fr>
686
687         * testsuite/performance/23_containers/insert_erase/41975.cc: New.
688
689 2011-10-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
690
691         * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.
692
693 2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>
694
695         * configure.host: Use config/os/mingw32-w64 instead of
696         config/os/mingw32 if vendor key is "w64".
697         * config/os/mingw32-w64: Duplicate from config/os/mingw32.
698         * config/os/mingw32-w64/os_defines.h: Enable
699         _GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
700         * acinclude.m4: Set fully-dynamic-string to 1 when enabled,
701         0 when disabled or undefined if unset by user.
702         * include/bits/basic_string.h: Check if
703         _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
704         include/bits/basic_string.tcc: Likewise.
705         * configure: Regenerated.
706         * config.h.in: Likewise.
707
708 2011-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
709
710         PR libstdc++/50714
711         * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
712         _M_c_locale_codecvt member.
713         * testsuite/22_locale/codecvt_byname/50714.cc: New.
714
715 2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
716
717         PR c++/50594
718         * libsupc++/new (operator new, operator delete): Decorate with
719         __attribute__((__externally_visible__)).
720         * include/bits/c++config: Add _GLIBCXX_THROW.
721         * libsupc++/del_op.cc: Adjust.
722         * libsupc++/del_opv.cc: Likewise.
723         * libsupc++/del_opnt.cc: Likewise.
724         * libsupc++/del_opvnt.cc: Likewise.
725         * libsupc++/new_op.cc: Likewise.
726         * libsupc++/new_opv.cc: Likewise.
727         * libsupc++/new_opnt.cc: Likewise.
728         * libsupc++/new_opvnt.cc: Likewise.
729         * testsuite/18_support/50594.cc: New.
730         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
731         line number.
732
733 2011-10-11  Emil Wojak  <emil@wojak.eu>
734
735         PR c++/50661
736         * include/bits/stl_algobase.h (equal): Compare arrays of pointers
737         too with memcmp.
738
739 2011-10-10  Benjamin Kosnik  <bkoz@redhat.com>
740
741         PR libstdc++/49818
742         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols.
743         * testsuite/util/testsuite_abi.cc: Same.
744         * libsupc++/unwind-cxx.h: Move required eh API...
745         * libsupc++/cxxabi.h: ... to here. Add required forward declarations.
746         Use _GLIBCXX_NOTHROW.
747         * libsupc++/pure.cc (__cxa_deleted_virtual): Add.
748         * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW.
749         * libsupc++/eh_catch.cc: Same.
750         * libsupc++/eh_globals.cc: Same.
751         * libsupc++/eh_type.cc: Same.
752
753 2011-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
754
755         * testsuite/util/testsuite_allocator.h (uneq_allocator): Add
756         propagate_on_container_swap typedef for C++0x testing.
757
758 2011-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
759
760         * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives,
761         for C++0x testing too.
762         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
763         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
764         * testsuite/24_iterators/istreambuf_iterator/requirements/
765         base_classes.cc: Adjust for C++0x testing.
766         * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode.
767         * testsuite/ext/codecvt/char-2.cc: Likewise.
768         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
769
770 2011-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
771
772         * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode
773         when int_type is unsigned.
774
775 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
776
777         PR libstdc++/49561
778         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
779         Add in C++0x mode.
780         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
781         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
782         list<>::size, list<>::swap, list<>::splice): Use it.
783         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
784         * include/bits/list.tcc (list<>::erase): Likewise.
785         (list<>::merge): Adjust in C++0x mode.
786         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
787         Adjust dg-error line number.
788         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
789         Likewise.
790         * testsuite/23_containers/list/requirements/dr438/
791         constructor_1_neg.cc: Likewise.
792         * testsuite/23_containers/list/requirements/dr438/
793         constructor_2_neg.cc: Likewise.
794
795 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
796
797         * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall
798         warning.
799
800 2011-10-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
801
802         * include/ext/alloc_traits.h (__alloc_traits::max_size): Define.
803         (__alloc_traits::rebind): Define.
804         * include/bits/stl_vector.h: Use them.
805         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define.
806         * testsuite/23_containers/vector/allocator/minimal.cc: New.
807         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
808         Adjust dg-error line numbers.
809         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
810         Likewise.
811         * testsuite/23_containers/vector/requirements/dr438/
812         constructor_1_neg.cc: Likewise.
813         * testsuite/23_containers/vector/requirements/dr438/
814         constructor_2_neg.cc: Likewise.
815
816 2011-10-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
817
818         * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
819         operator and use.
820
821 2011-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
822
823         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
824         insert(const_iterator, value_type&&)): Don't define here...
825         * include/bits/unordered_set.h (__unordered_set<>,
826         __unordered_multiset<>): ... define here instead.
827
828 2011-09-29  Jason Merrill  <jason@redhat.com>
829
830         * testsuite/util/testsuite_tr1.h (test_property): Avoid
831         ambiguity.
832
833 2011-10-01  François Dumont  <fdumont@gcc.gnu.org>
834
835         * include/debug/vector (vector<>::erase(iterator, iterator): Check
836         iterators equality using normal iterators.
837         * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
838
839 2011-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
840
841         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
842         Remove noexcept from declaration too.
843
844 2011-09-27  Benjamin Kosnik  <bkoz@redhat.com>
845
846         * doc/html/*: Regenerate.
847
848         * doc/Makefile.am: Un-nest the ext output directory.
849         * doc/Makefile.in: Regenerate.
850         * spine.xml: Remove authors, add abstract for short
851         contents. Rename to index.html for html output.
852         * manual/spine.xml: Authors here, manual starts with index.html.
853         * api.xml: Update.
854         * faq.xml: Same.
855
856 2011-09-27  Marcus Shawcroft  <marcus.shawcroft@arm.com>
857
858         * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
859         of name().
860
861 2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
862
863         PR libstdc++/50529
864         * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
865         Fix to do nothing if the range is empty.
866         * include/bits/stl_bvector.h: Likewise.
867         * include/bits/deque.tcc: Likewise.
868         * include/debug/vector: Adjust.
869         * include/debug/deque: Likewise.
870         * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
871         * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
872         * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
873
874 2011-09-25  Benjamin Kosnik  <bkoz@redhat.com>
875             Jonathan Wakely  <jwakely.gcc@gmail.com>
876
877         PR libstdc++/48698
878         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
879         * configure.ac: Move AC_SUBST of libtool_VERSION past call to
880         GLIBCXX_ENABLE_SYMVERS.
881         * configure: Regenerate.
882         * include/bits/c++config: Use __7 as versioned namespace name.
883         * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
884         per above.
885         * include/c_global/cwchar: Adjust nested namespaces.
886         * testsuite/20_util/bind/48698.cc: Add test case.
887         * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
888
889 2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
890
891         Revert (no longer necessary post r179130):
892
893         2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
894
895         * testsuite/util/testsuite_error.h: Add empty default constructor
896         to __gnu_test::test_category and
897         __gnu_test::test_derived_category.
898         * src/future.cc: Add empty default constructor to
899         future_error_category.
900         * src/system_error.cc: Add default ctor to generic_error_category
901         and system_error_category.
902
903 2011-09-24  John Salmon  <john.salmon@deshaw.com>
904
905         PR libstdc++/50510
906         * include/bits/random.tcc (seed_seq::generate): Fix computation.
907
908 2011-09-24  John Salmon  <john.salmon@deshaw.com>
909
910         PR libstdc++/50509
911         * include/bits/random.tcc (seed_seq::generate): Fix computation.
912
913 2011-09-21  Benjamin Kosnik  <bkoz@redhat.com
914
915         * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
916         * doc/Makefile.in: Regenerate.
917
918 2011-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
919
920         * src/limits.cc: Replace everywhere __int128_t -> __int128, and
921         __uint128_t -> unsigned __int128.
922         * include/std/type_traits: Likewise.
923         * include/std/limits: Likewise.
924         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
925         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
926         * testsuite/18_support/numeric_limits/40856.cc: Likewise.
927         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
928         * testsuite/util/testsuite_common_types.h: Likewise.
929         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
930         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
931         * testsuite/20_util/is_floating_point/value.cc: Likewise.
932         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
933         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
934         * testsuite/20_util/is_signed/value.cc: Likewise.
935         * testsuite/20_util/is_unsigned/value.cc: Likewise.
936         * testsuite/20_util/is_integral/value.cc: Likewise.
937         * config/abi/pre/gnu.ver: Likewise.
938         * acinclude.m4: Likewise.
939         * configure: Regenerate.
940         * config.h.in: Likewise.
941
942 2011-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
943
944         PR libstdc++/40856
945         * include/std/limits (numeric_limits<__int128_t>,
946         numeric_limits<__uint128_t>): Add.
947         * src/limits.cc:Define.
948         * config/abi/pre/gnu.ver: Export.
949         * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
950         * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
951         (limits_tl): Use it.
952         * testsuite/18_support/numeric_limits/requirements/
953         constexpr_functions.cc: Likewise.
954         * testsuite/18_support/numeric_limits/40856.cc: New.
955         * testsuite/18_support/numeric_limits/dr559.cc: Extend.
956         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
957         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
958         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
959         line numbers.
960         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
961         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
962         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
963         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
964         Likewise.
965         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
966         Likewise.
967         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
968         Likewise.
969
970 2011-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
971
972         PR libstdc++/50441
973         * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
974         * configure.ac: Call it.
975         * include/std/type_traits (__is_integral_helper<__int128_t>,
976         __is_integral_helper<__uint128_t>,
977         __is_floating_point_helper<__float128>,
978         __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
979         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
980         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
981         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
982         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
983         * testsuite/20_util/is_signed/value.cc: Likewise.
984         * testsuite/20_util/is_unsigned/value.cc: Likewise.
985         * testsuite/20_util/is_integral/value.cc: Likewise.
986         * testsuite/20_util/is_floating_point/value.cc: New.
987         * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
988         Likewise.
989         * testsuite/20_util/is_floating_point/requirements/
990         explicit_instantiation.cc: Likewise.
991         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
992         dg-error line numbers.
993         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
994         Likewise.
995         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
996         * configure: Regenerate.
997         * config.h.in: Likewise.
998
999 2011-09-17  François Dumont  <fdumont@gcc.gnu.org>
1000
1001         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
1002         _RehashPolicy&)): Commit the modification of the policy only if no
1003         exception occured.
1004         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
1005         New.
1006
1007 2011-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1008
1009         * testsuite/23_containers/array/comparison_operators/
1010         less_or_equal.cc: New.
1011         * testsuite/23_containers/array/comparison_operators/
1012         greater_or_equal.cc: Likewise.
1013         * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
1014         * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
1015         * testsuite/23_containers/array/comparison_operators/not_equal.cc:
1016         Likewise.
1017         * testsuite/23_containers/array/comparison_operators/greater.cc:
1018         Likewise.
1019         * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
1020         * testsuite/23_containers/array/capacity/empty.cc: Likewise.
1021         * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
1022         * testsuite/23_containers/array/capacity/size.cc: Likewise.
1023         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
1024         Likewise.
1025         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
1026         Likewise.
1027         * testsuite/23_containers/array/element_access/at_out_of_range.cc:
1028         Likewise.
1029         * testsuite/23_containers/array/element_access/back.cc: Likewise.
1030         * testsuite/23_containers/array/element_access/front.cc: Likewise.
1031         * testsuite/23_containers/array/element_access/data.cc: Likewise.
1032         * testsuite/23_containers/array/cons/aggregate_initialization.cc:
1033         Likewise.
1034         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
1035         Likewise.
1036         * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
1037         * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
1038         * testsuite/23_containers/array/specialized_algorithms/swap.cc:
1039         Likewise.
1040         * testsuite/23_containers/array/constexpr_get.cc: Move...
1041         * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
1042         ... here.
1043         * testsuite/23_containers/array/requirements/get.cc: Move...
1044         * testsuite/23_containers/array/tuple_interface/get: ... here.
1045         * testsuite/23_containers/array/at_neg.cc: Move...
1046         * testsuite/23_containers/array/element_access: ... here.
1047         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
1048         Move...
1049         * testsuite/23_containers/array/capacity: ... here.
1050         * testsuite/23_containers/array/requirements/
1051         constexpr_element_access.cc: Move...
1052         * testsuite/23_containers/array/element_access: ... here.
1053
1054         * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
1055         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
1056         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
1057         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
1058         * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
1059
1060         * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
1061         * testsuite/20_util/forward/1_neg.cc: Likewise.
1062
1063 2011-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
1064
1065         * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
1066         (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
1067         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
1068         make_tuple test.
1069         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1070         line number.
1071
1072 2011-09-14  François Dumont  <fdumont@gcc.gnu.org>
1073             Paolo Carlini  <paolo.carlini@oracle.com>
1074
1075         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
1076         hash policy _M_prev_resize on exception.
1077         (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
1078         before using it and use latter method to have it restored on exception.
1079         (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
1080         (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
1081         (_Hashtable<>::rehash): Likewise.
1082         * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
1083         * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
1084         Likewise.
1085
1086 2011-09-13  Paul Brook  <paul@codesourcery.com>
1087
1088         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
1089         * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
1090         * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
1091         __ARM_EABI_UNWINDER__ check.
1092         (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
1093         (get_ttype_entry): Use generic implementation on ARM EABI.
1094         (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
1095         UNWIND_STACK_REG.
1096         (PERSONALITY_FUNCTION): Set ttype_base.
1097
1098 2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
1099             Paolo Carlini  <paolo.carlini@oracle.com>
1100
1101         * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
1102         _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
1103         constexpr functions; adjust everywhere.
1104         (__get_helper, get): Declare constexpr all three overloads.
1105         (tuple_cat): Declare constexpr; use late return type to improve
1106         error messages.
1107         * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
1108         __pair_get<>::__const_get, get): Declare all constexpr.
1109         * include/std/array (get): Likewise.
1110         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
1111         tuple_cat test.
1112         * testsuite/23_containers/array/constexpr_get.cc: New.
1113         * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
1114         * testsuite/20_util/pair/constexpr_get.cc: Likewise.
1115         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
1116         line number.
1117
1118 2011-09-12  Jason Merrill  <jason@redhat.com>
1119
1120         * testsuite/20_util/is_constructible/value-2.cc: Adjust
1121         expected values.
1122
1123 2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>
1124
1125         PR libstdc++/50159
1126         * include/std/tuple (tuple_cat): Reimplement according to the
1127         resolution of LWG 1385.
1128         * include/std/type_traits: Define __and_ and __or_ for zero
1129         arguments too; minor tweaks.
1130         * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
1131         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
1132         for now tuple_cat test.
1133         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1134         line numbers.
1135         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1136         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1137         Likewise.
1138         * doc/xml/manual/status_cxx200x.xml: Update.
1139
1140 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
1141
1142         * include/std/tuple: Use everywhere std::size_t... instead of int...
1143         * include/std/functional: Likewise.
1144         * include/std/scoped_allocator: Likewise.
1145         * include/bits/stl_pair.h: Likewise.
1146
1147 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
1148
1149         PR libstdc++/50336
1150         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
1151         Implement LWG 445 in C++0x mode.
1152         * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
1153         New.
1154
1155 2011-09-08  Dodji Seketeli  <dodji@redhat.com>
1156
1157         PR c++/33255 - Support -Wunused-local-typedefs warning
1158         * include/ext/bitmap_allocator.h
1159         (__detail::__mini_vector::__lower_bound): Remove unused typedef.
1160         * src/istream.cc (std::operator>>(basic_istream<char>& __in,
1161         basic_string<char>& __str)): Likewise.
1162         (std::getline): Likewise.
1163         * src/valarray.cc (__valarray_product): Likewise.
1164
1165 2011-09-07  François Dumont  <francois.cppdevs@free.fr>
1166
1167         * testsuite/23_containers/array/at.cc: Revert to...
1168         * testsuite/23_containers/array/at_neg.cc: ...this.
1169
1170 2011-09-07  Jason Merrill  <jason@redhat.com>
1171
1172         * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
1173         * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
1174
1175 2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>
1176
1177         * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
1178         (tuple(tuple&&)): Same.
1179         (tuple(const tuple<_UElements...>& __in)): Same.
1180         (tuple(tuple<_UElements...>&& __in)): Same.
1181         (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
1182         Same.
1183         (get): Same.
1184         * include/std/array: Consolidate array::data usage.
1185         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
1186         Remove extra include.
1187         * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
1188         * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
1189         * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
1190         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1191
1192 2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
1193             Paolo Carlini  <paolo.carlini@oracle.com>
1194
1195         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
1196         _M_next_bkt): Cast _M_max_load_factor to long double.
1197         (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
1198         (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
1199         float quantities to long double.
1200
1201 2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>
1202
1203         PR libstdc++/50257
1204         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
1205         _M_next_bkt): Optimize for small argument.
1206
1207 2011-09-02  François Dumont  <fdumont@gcc.gnu.org>
1208
1209         * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
1210         allocate): Update allocation count only if allocation succeeded.
1211
1212 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1213
1214         * include/std/bitset: Trivial formatting fixes.
1215
1216 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1217             Marc Glisse  <marc.glisse@normalesup.org>
1218
1219         * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
1220         (_Base_bitset<>::_M_are_all): Add.
1221         (bitset<>::all): Use the latter, improve implementation.
1222
1223 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
1224             Marc Glisse  <marc.glisse@normalesup.org>
1225
1226         PR libstdc++/50268
1227         * include/std/bitset (struct _Sanitize_val): Add.
1228         (bitset<>::bitset(unsigned long long)): Fix.
1229         * testsuite/23_containers/bitset/cons/50268.cc: New.
1230
1231 2011-09-01  Paolo Carlini  <paolo.carlini@oracle.com>
1232
1233         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
1234         Remove noexcept, the move constructor allocates memory; rearrange
1235         the code in the body to consistently update __ht._M_rehash_policy
1236         before using _M_next_bkt on it.
1237         * include/debug/unordered_map: Adjust.
1238         * include/debug/unordered_set: Likewise.
1239         * include/profile/unordered_map: Likewise.
1240         * include/profile/unordered_set: Likewise.
1241         * testsuite/23_containers/unordered_map/cons/
1242         noexcept_move_construct.cc: Remove.
1243         * testsuite/23_containers/unordered_set/cons/
1244         noexcept_move_construct.cc: Likewise.
1245         * testsuite/23_containers/unordered_multimap/cons/
1246         noexcept_move_construct.cc: Likewise.
1247         * testsuite/23_containers/unordered_multiset/cons/
1248         noexcept_move_construct.cc: Likewise.
1249
1250 2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
1251
1252         * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
1253         Fix order of template parameters per LWG 2004.
1254
1255 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
1256
1257         * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
1258         * testsuite/24_iterators/move_iterator/dr2061.cc: New.
1259         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1260         line numbers.
1261
1262 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
1263
1264         * config/os/mingw32/error_constants.h: Fix commas.
1265
1266 2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
1267
1268         * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
1269
1270 2011-08-29  Kai Tietz  <ktietz@redhat.com>
1271
1272         * configure: Regenerated.
1273         * config.h.in: Regenerated.
1274         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
1275         checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
1276         EWOULDBLOCK.
1277         * config/os/mingw32/error_constants.h (errc): Add
1278         enumerator values no_child_process, no_space_on_device,
1279         not_supported, operation_not_permitted, operation_would_block,
1280         timed_out, and value_too_large,
1281
1282 2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
1283
1284         PR libstdc++/50118
1285         * include/bits/stl_list.h (_List_base<>::
1286         _List_base(const allocator_type&)): Remove.
1287         (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
1288         (list<>:list(const allocator_type&), list(size_type, const
1289         value_type&, const allocator_type&),
1290         list(initializer_list<, const allocator_type&),
1291         list(_InputIterator, _InputIterator, const allocator_type&),
1292         insert(iterator, size_type, const value_type&),
1293         insert(iterator, _InputIterator, _InputIterator)): Adjust.
1294         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
1295         const allocator_type&)): Fix.
1296         * include/bits/stl_map.h (map<>::map(const _Compare&,
1297         const allocator_type&), map(initializer_list<>,
1298         const _Compare&, const allocator_type&), map(_InputIterator,
1299         _InputIterator, const _Compare&, const allocator_type&),
1300         get_allocator): Adjust.
1301         * include/bits/stl_set.h (set<>::set(const _Compare&,
1302         const allocator_type&), set(initializer_list<>,
1303         const _Compare&, const allocator_type&), set(_InputIterator,
1304         _InputIterator, const _Compare&, const allocator_type&),
1305         get_allocator): Likewise.
1306         * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
1307         const allocator_type&), multimap(initializer_list<>,
1308         const _Compare&, const allocator_type&), multimap(_InputIterator,
1309         _InputIterator, const _Compare&, const allocator_type&),
1310         get_allocator): Likewise.
1311         * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
1312         const allocator_type&), multiset(initializer_list<>,
1313         const _Compare&, const allocator_type&), multiset(_InputIterator,
1314         _InputIterator, const _Compare&, const allocator_type&),
1315         get_allocator): Likewise.
1316         * include/bits/forward_list.h (_Fwd_list_base<>::
1317         _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
1318         const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
1319         Remove.
1320         (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
1321         _Fwd_list_base(const _Fwd_list_base&,
1322         const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
1323         const _Node_alloc_type&)): Add.
1324         (forward_list<>::forward_list(const _Alloc&),
1325         forward_list(const forward_list&, const _Alloc&),
1326         forward_list(forward_list&&, const _Alloc&),
1327         forward_list(size_type, const _Tp&, const _Alloc&),
1328         forward_list(_InputIterator, _InputIterator, const _Alloc&),
1329         forward_list(std::initializer_list<>, const _Alloc&),
1330         get_allocator): Adjust.
1331         * include/bits/forward_list.tcc: Adjust.
1332         * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
1333         * testsuite/23_containers/unordered_map/requirements/
1334         explicit_instantiation/5.cc: New.
1335         * testsuite/23_containers/multimap/requirements/
1336         explicit_instantiation/5.cc: Likewise.
1337         * testsuite/23_containers/multimap/requirements/
1338         explicit_instantiation/5_c++0x.cc: Likewise.
1339         * testsuite/23_containers/set/requirements/explicit_instantiation/
1340         5.cc: Likewise.
1341         * testsuite/23_containers/set/requirements/explicit_instantiation/
1342         5_c++0x.cc: Likewise.
1343         * testsuite/23_containers/unordered_multimap/requirements/
1344         explicit_instantiation/5.cc: Likewise.
1345         * testsuite/23_containers/forward_list/requirements/
1346         explicit_instantiation/5.cc: Likewise.
1347         * testsuite/23_containers/unordered_set/requirements/
1348         explicit_instantiation/5.cc: Likewise.
1349         testsuite/23_containers/multiset/requirements/explicit_instantiation/
1350         5.cc: Likewise.
1351         * testsuite/23_containers/multiset/requirements/
1352         explicit_instantiation/5_c++0x.cc: Likewise.
1353         * testsuite/23_containers/list/requirements/explicit_instantiation/
1354         5_c++0x.cc: Likewise.
1355         * testsuite/23_containers/list/requirements/explicit_instantiation/
1356         5.cc: Likewise.
1357         * testsuite/23_containers/unordered_multiset/requirements/
1358         explicit_instantiation/5.cc: Likewise.
1359         * testsuite/23_containers/map/requirements/explicit_instantiation/
1360         5.cc: Likewise.
1361         * testsuite/23_containers/map/requirements/explicit_instantiation/
1362         5_c++0x.cc: Likewise.
1363         * testsuite/23_containers/forward_list/requirements/dr438/
1364         assign_neg.cc: Adjust dg-error line number.
1365         * testsuite/23_containers/forward_list/requirements/dr438/
1366         insert_neg.cc: Likewise.
1367         * testsuite/23_containers/forward_list/requirements/dr438/
1368         constructor_1_neg.cc: Likewise.
1369         * testsuite/23_containers/forward_list/requirements/dr438/
1370         constructor_2_neg.cc: Likewise.
1371         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1372         Likewise.
1373         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1374         Likewise.
1375         * testsuite/23_containers/list/requirements/dr438/
1376         constructor_1_neg.cc: Likewise.
1377         * testsuite/23_containers/list/requirements/dr438/
1378         constructor_2_neg.cc: Likewise.
1379
1380 2011-08-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1381
1382         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
1383         (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
1384         * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
1385         (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
1386         * configure: Regenerate.
1387         * config.h.in: Regenerate.
1388         * config/os/solaris/solaris2.8/os_defines.h
1389         (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
1390         * config/os/solaris/solaris2.9: Remove.
1391         * configure.host (solaris2.8): Merge with ...
1392         (solaris2.9, solaris2.1[0-9]): ... this.
1393         Always use os/solaris/solaris2.8.
1394
1395 2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
1396
1397         * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
1398         workaround for c++/49045.
1399         * include/bits/algorithmfwd.h: Likewise.
1400
1401 2011-08-25  Tom Tromey  <tromey@redhat.com>
1402
1403         * testsuite/libstdc++-prettyprinters/simple.cc: New file.
1404         * testsuite/lib/gdb-test.exp: New file.
1405         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
1406         file.
1407
1408 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1409
1410         * include/tr1/cmath: Extend/update comment.
1411
1412 2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
1413
1414         PR libstdc++/50119
1415         * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
1416         _OutputIterator, input_iterator_tag)): Fix.
1417         * testsuite/25_algorithms/copy_n/50119.cc: New.
1418
1419 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1420             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1421
1422         PR libstdc++/1773
1423         * config/os/solaris2.7: Rename to config/os/solaris2.9.
1424         * config/os/solaris/solaris2.9/os_defines.h
1425         (__CORRECT_ISO_CPP_MATH_H_PROTO1)
1426         (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
1427         (__CORRECT_ISO_CPP_STRING_H_PROTO)
1428         (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
1429         * config/os/solaris2.8/ctype_base.h,
1430         config/os/solaris2.8/ctype_configure_char.cc,
1431         config/solaris2.8/ctype_inline.h,
1432         config/os/solaris2.8/os_defines.h: New files.
1433
1434         * configure.host (solaris2.[89], solaris2.1[0-9]):
1435         Split into ...
1436         (solaris2.8): ... this.
1437         Use os/solaris/solaris2.8.
1438         (solaris2.9, solaris2.1[0-9]): ... and this.
1439         Use os/solaris/solaris2.9.
1440
1441         * include/c_global/cmath (double abs(double)): Wrap in
1442         !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
1443         !__CORRECT_ISO_CPP_MATH_H_PROTO2.
1444         (float abs(float), long double abs(long double): Wrap in
1445         !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1446         (float acos(float), long double acos(long double)): Likewise.
1447         (float asin(float), long double asin(long double)): Likewise.
1448         (float atan(float), long double atan(long double)): Likewise.
1449         (float atan2(float, float), long double atan2(long double, long
1450         double)): Likewise.
1451         (float ceil(float), long double ceil(long double)): Likewise.
1452         (float cos(float), long double cos(long double)): Likewise.
1453         (float cosh(float), long double cosh(long double)): Likewise.
1454         (float exp(float), long double exp(long double)): Likewise.
1455         (float fabs(float), long double fabs(long double)): Likewise.
1456         (float floor(float), long double floor(long double)): Likewise.
1457         (float fmod(float, float), long double fmod(long double, long
1458         double)): Likewise.
1459         (float frexp(float, int*), long double frexp(long double, int*)):
1460         Likewise.
1461         (float ldexp(float, int), long double ldexp(long double, int)):
1462         Likewise.
1463         (float log(float), long double log(long double)): Likewise.
1464         (float log10(float), long double log10(long double)): Likewise.
1465         (float modf(float, float*), long double modf(long double, long
1466         double*))): Likewise.
1467         (float pow(float, float), long double pow(long double, long
1468         double)): Likewise.
1469         (float sin(float), long double sin(long double)): Likewise.
1470         (float sinh(float), long double sinh(long double)): Likewise.
1471         (float sqrt(float), long double sqrt(long double)): Likewise.
1472         (float tan(float), long double tan(long double)): Likewise.
1473         (float tanh(float), long double tanh(long double)): Likewise.
1474         * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
1475         long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
1476         * include/tr1/cmath (float fabs(float), long double fabs(long
1477         double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1478
1479 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1480
1481         * doc/xml/images/*: Image and image filename changes.
1482
1483 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1484
1485         * testsuite/data/make_graph_test_infos.xml: Edit.
1486         * testsuite/data/make_graph_htmls.xml: Remove
1487         * scripts/make_graph.py: Edit, fix.
1488         * scripts/make_graphs.py: Remove.
1489
1490         * doc/Makefile.am (doc-svg-performance): New.
1491         (doc-html-performance): Remove.
1492         * doc/Makefile.in: Regenerate.
1493
1494         * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
1495         * doc/xml/manual/policy_data_structures.xml: Same.
1496         * doc/xml/manual/locale.xml: Same.
1497
1498         Testsuite renames.
1499         * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
1500         Rename.
1501         * performance/ext/pb_ds/random_int_find_timing.cc: Same.
1502         * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
1503         * performance/ext/pb_ds/multimap_text_find_timing.hpp
1504         * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
1505         * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
1506         * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
1507         * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
1508         * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
1509         * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
1510         * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
1511         * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
1512         * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
1513         * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
1514         * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
1515         * performance/ext/pb_ds/text_find_timing.cc: Same.
1516         * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
1517         * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
1518         * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
1519         * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
1520         * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
1521         * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
1522         * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
1523         * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
1524         * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
1525         Same.
1526         * performance/ext/pb_ds/multimap_text_insert_timing.hpp
1527         * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
1528         * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
1529
1530         * performance/ext/pb_ds/all_int_find.cc: To these new files...
1531         * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
1532         * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
1533         * performance/ext/pb_ds/all_text_find.cc: ...this.
1534         * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
1535         * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
1536         * performance/ext/pb_ds/multimap_text_find.hpp
1537         * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
1538         * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
1539         * performance/ext/pb_ds/multimap_text_insert.hpp
1540         * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
1541         * performance/ext/pb_ds/multimap_text_insert_mem.hpp
1542         * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
1543         * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
1544         * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
1545         * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
1546         * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
1547         * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
1548         * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
1549         * performance/ext/pb_ds/priority_queue_text_modify.hpp
1550         * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
1551         * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
1552         * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
1553         * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
1554         * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
1555         * performance/ext/pb_ds/tree_split_join.cc: ...this.
1556         * performance/ext/pb_ds/tree_text_insert.cc: ...this.
1557         * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
1558
1559         * doc/xml/images/*: Image and image filename changes.
1560
1561 2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
1562
1563         * include/c_global/cmath (fmod(_Tp, _Up)): Add.
1564         * include/c_std/cmath: Likewise.
1565
1566 2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
1567
1568         * include/std/future: constexpr functions are implicitly inline.
1569         * include/std/chrono: Likewise.
1570         * include/std/complex: Likewise.
1571         * include/bits/move.h: Likewise.
1572         * include/bits/stl_pair.h: Likewise.
1573
1574 2011-08-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1575
1576         * include/bits/alloc_traits.h: Fix doxygen @headername.
1577
1578 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1579
1580         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
1581
1582 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1583
1584         * doc/doxygen/user.cfg.in: Add scoped_allocator.
1585
1586         * include/debug/safe_sequence.h: Fix doxygen markup.
1587         * include/debug/safe_unordered_base.h: Same.
1588         * include/debug/safe_local_iterator.tcc: Same.
1589         * include/debug/safe_unordered_container.h: Same.
1590         * include/std/valarray: Same.
1591         * include/std/iomanip: Same.
1592         * include/std/streambuf: Same.
1593         * include/std/bitset: Same.
1594         * include/std/fstream: Same.
1595         * include/std/functional: Same.
1596         * include/std/istream: Same.
1597         * include/std/ostream: Same.
1598         * include/std/scoped_allocator: Same.
1599         * include/std/sstream: Same.
1600         * include/parallel/multiway_merge.h: Same.
1601         * include/parallel/base.h: Same.
1602         * include/parallel/for_each_selectors.h: Same.
1603         * include/parallel/multiway_mergesort.h: Same.
1604         * include/parallel/search.h: Same.
1605         * include/parallel/partial_sum.h: Same.
1606         * include/parallel/queue.h: Same.
1607         * include/parallel/sort.h: Same.
1608         * include/parallel/random_number.h: Same.
1609         * include/ext/vstring.h: Same.
1610         * include/ext/algorithm: Same.
1611         * include/ext/pb_ds/assoc_container.h: Same.
1612         * include/ext/bitmap_allocator.h: Same.
1613         * include/ext/stdio_filebuf.h: Same.
1614         * include/ext/memory: Same.
1615         * include/ext/functional: Same.
1616         * include/bits/basic_ios.h: Same.
1617         * include/bits/stl_list.h: Same.
1618         * include/bits/stl_map.h: Same.
1619         * include/bits/stl_algobase.h: Same.
1620         * include/bits/stl_queue.h: Same.
1621         * include/bits/gslice.h: Same.
1622         * include/bits/locale_classes.h: Same.
1623         * include/bits/stl_set.h: Same.
1624         * include/bits/locale_facets.h: Same.
1625         * include/bits/stl_stack.h: Same.
1626         * include/bits/stl_heap.h: Same.
1627         * include/bits/forward_list.h: Same.
1628         * include/bits/stream_iterator.h: Same.
1629         * include/bits/basic_string.h: Same.
1630         * include/bits/stl_multimap.h: Same.
1631         * include/bits/stl_pair.h: Same.
1632         * include/bits/ios_base.h: Same.
1633         * include/bits/stl_numeric.h: Same.
1634         * include/bits/stl_vector.h: Same.
1635         * include/bits/stl_deque.h: Same.
1636         * include/bits/codecvt.h: Same.
1637         * include/bits/stl_multiset.h: Same.
1638         * include/bits/stl_uninitialized.h: Same.
1639         * include/bits/ptr_traits.h: Same.
1640         * include/bits/slice_array.h: Same.
1641         * include/bits/stl_iterator_base_funcs.h: Same.
1642         * include/bits/stl_algo.h: Same.
1643         * include/bits/stl_iterator.h: Same.
1644         * include/bits/stl_tempbuf.h: Same.
1645         * include/bits/regex.h: Same.
1646         * include/bits/range_access.h: Same.
1647         * include/bits/random.h: Same.
1648         * include/bits/alloc_traits.h: Same.
1649         * include/bits/regex_error.h: Same.
1650         * include/bits/locale_facets_nonio.h: Same.
1651         * include/bits/stl_relops.h: Same.
1652         * include/backward/auto_ptr.h: Same.
1653         * libsupc++/initializer_list: Same.
1654
1655         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1656         Adjust line numbers.
1657         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
1658         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1659         Same.
1660         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1661         Same.
1662
1663 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1664
1665         * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
1666         to $(toplevel_srcdir)/libgcc.
1667         * configure: Regenerate.
1668
1669 2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
1670
1671         * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
1672         imagedata.
1673         * doc/xml/manual/test_policy_data_structures.xml: Same.
1674         * doc/xml/manual/policy_data_structures.xml: Same.
1675
1676         * doc/Makefile.am (stamp-html-docbook-images)
1677         (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
1678         (xml_extra): Add lwg html file dependencies.
1679         (xml_images): Add image html file dependencies.
1680         * doc/Makefile.in: Regenerate.
1681         (stamp-html): Change to stamp-html-docbook-data.
1682         (stamp-html-copy): Remove.
1683
1684 2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
1685
1686         * src/atomic.cc: Use noexcept.
1687         * include/std/atomic: Likewise.
1688         * include/bits/atomic_0.h: Likewise.
1689         * include/bits/atomic_2.h: Likewise.
1690         * include/bits/atomic_base.h: Likewise.
1691
1692 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1693
1694         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
1695         unistd.h for unlink.
1696         * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
1697         * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
1698         * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
1699         * testsuite/performance/27_io/fstream_seek_write.cc: Same.
1700         * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
1701         * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
1702         * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
1703         * testsuite/performance/27_io/filebuf_sputc.cc: Same.
1704
1705 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1706
1707         * include/std/tuple: Mark more constructors constexpr.
1708         * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
1709         * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
1710         * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
1711         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1712
1713 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1714             François Dumont  <francois.cppdevs@free.fr>
1715
1716         * testsuite/23_containers/array/at_neg.cc: Move...
1717         * testsuite/23_containers/array/at.cc: ...here. Remove
1718         -fno-exceptions, call const at member function.
1719
1720 2011-08-01  H.J. Lu  <hongjiu.lu@intel.com>
1721
1722         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
1723
1724 2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
1725
1726         PR c++/49813
1727         * include/c_global/cmath (isinf): Remove workaround.
1728
1729 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
1730
1731         PR libstdc++/49925
1732         * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
1733         with std::.
1734         * include/bits/shared_ptr_base.h (__make_shared): Likewise.
1735
1736 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1737
1738         * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
1739         * doc/xml/manual/policy_data_structures.xml: Same.
1740
1741         * doc/xml/class.txml: Remove biblioid.
1742         * doc/xml/manual/allocator.xml: Same.
1743         * doc/xml/manual/ctype.xml: Same.
1744         * doc/xml/manual/codecvt.xml: Same.
1745         * doc/xml/manual/backwards_compatibility.xml: Same.
1746         * doc/xml/manual/abi.xml: Same.
1747         * doc/xml/manual/shared_ptr.xml: Same.
1748         * doc/xml/manual/using_exceptions.xml: Same.
1749         * doc/xml/manual/messages.xml: Same.
1750
1751 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1752
1753         Docbook conversion of existing ext/pb_ds documentation.
1754         * doc/Makefile.am (xml_sources_manual): Add
1755         policy_data_structures.xml and
1756         test_policy_data_structures.xml.
1757         (stamp-html-copy): Remove special-case for ext/pb_ds directory.
1758         (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
1759         * doc/Makefile.in: Regenerate.
1760         * doc/xml/manual/policy_data_structures.xml: New, adapted from
1761           previous html-only instance in doc/html/ext/pb_ds.
1762         * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
1763
1764         * doc/xml/spine.xml: Update copyright.
1765         * doc/xml/manual/spine.xml: Same.
1766         * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
1767         * doc/xml/manual/bitmap_allocator.xml: Same.
1768         * doc/xml/manual/mt_allocator.xml: Same.
1769
1770         Populate image directory.
1771         * doc/xml/images/(pbds_balls_and_bins.png,
1772         pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
1773         pbds_binary_priority_queue_random_int_push_timing_test_local.png,
1774         pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
1775         pbds_cc_hash_random_int_find_timing_test_local.pdf,
1776         pbds_cc_hash_random_int_find_timing_test_local.png,
1777         pbds_cc_hash_random_int_find_timing_test_local.svg,
1778         pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
1779         pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
1780         pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
1781         pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
1782         pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
1783         pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
1784         pbds_container_tag_hierarchy.pdf,
1785         pbds_container_tag_hierarchy.png,
1786         pbds_container_tag_hierarchy.svg,
1787         pbds_different_underlying_dss_1.png,
1788         pbds_different_underlying_dss_2.png,
1789         pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
1790         pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
1791         pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
1792         pbds_gp_hash_random_int_find_timing_test_local.pdf,
1793         pbds_gp_hash_random_int_find_timing_test_local.png,
1794         pbds_gp_hash_random_int_find_timing_test_local.svg,
1795         pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
1796         pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
1797         pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
1798         pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
1799         pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
1800         pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
1801         pbds_hash_policy_cd.png,
1802         pbds_hash_random_int_erase_mem_usage_test_local.pdf,
1803         pbds_hash_random_int_erase_mem_usage_test_local.png,
1804         pbds_hash_random_int_erase_mem_usage_test_local.svg,
1805         pbds_hash_ranged_hash_range_hashing_fns.png,
1806         pbds_hash_range_hashing_seq_diagram2.png,
1807         pbds_hash_range_hashing_seq_diagram.png,
1808         pbds_hash_zlob_random_int_find_timing_test_local.pdf,
1809         pbds_hash_zlob_random_int_find_timing_test_local.png,
1810         pbds_hash_zlob_random_int_find_timing_test_local.svg,
1811         pbds_insert_resize_sequence_diagram1.png,
1812         pbds_insert_resize_sequence_diagram2.png,
1813         pbds_insert_resize_sequence_diagram3.png,
1814         pbds_invalidation_guarantee_erase.png,
1815         pbds_invalidation_tag_hierarchy.pdf,
1816         pbds_invalidation_tag_hierarchy.png,
1817         pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
1818         pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
1819         pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
1820         pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
1821         pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
1822         pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
1823         pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
1824         pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
1825         pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
1826         pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
1827         pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
1828         pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
1829         pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
1830         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
1831         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1832         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
1833         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
1834         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1835         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
1836         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
1837         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1838         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
1839         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
1840         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1841         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
1842         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
1843         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
1844         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
1845         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
1846         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
1847         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
1848         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
1849         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
1850         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
1851         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
1852         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
1853         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
1854         pbds_node_invariants.png,
1855         pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
1856         pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
1857         pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
1858         pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
1859         pbds_pairing_priority_queue_text_push_timing_test_local.png,
1860         pbds_pairing_priority_queue_text_push_timing_test_local.svg,
1861         pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
1862         pbds_point_iterators_range_ops_1.png,
1863         pbds_point_iterators_range_ops_2.png,
1864         pbds_priority_queue_different_underlying_dss.png,
1865         pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
1866         pbds_priority_queue_random_int_push_pop_timing_test_local.png,
1867         pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
1868         pbds_priority_queue_random_int_push_timing_test_local.pdf,
1869         pbds_priority_queue_random_int_push_timing_test_local.png,
1870         pbds_priority_queue_random_int_push_timing_test_local.svg,
1871         pbds_priority_queue_tag_hierarchy.pdf,
1872         pbds_priority_queue_tag_hierarchy.png,
1873         pbds_priority_queue_tag_hierarchy.svg,
1874         pbds_priority_queue_text_join_timing_test_local.pdf,
1875         pbds_priority_queue_text_join_timing_test_local.png,
1876         pbds_priority_queue_text_join_timing_test_local.svg,
1877         pbds_priority_queue_text_modify_down_timing_test_local.pdf,
1878         pbds_priority_queue_text_modify_down_timing_test_local.png,
1879         pbds_priority_queue_text_modify_down_timing_test_local.svg,
1880         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
1881         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1882         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
1883         pbds_priority_queue_text_modify_up_timing_test_local.pdf,
1884         pbds_priority_queue_text_modify_up_timing_test_local.png,
1885         pbds_priority_queue_text_modify_up_timing_test_local.svg,
1886         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
1887         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1888         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
1889         pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
1890         pbds_priority_queue_text_pop_mem_usage_test_local.png,
1891         pbds_priority_queue_text_pop_mem_usage_test_local.svg,
1892         pbds_priority_queue_text_push_pop_timing_test_local.pdf,
1893         pbds_priority_queue_text_push_pop_timing_test_local.png,
1894         pbds_priority_queue_text_push_pop_timing_test_local.svg,
1895         pbds_priority_queue_text_push_timing_test_local.pdf,
1896         pbds_priority_queue_text_push_timing_test_local.png,
1897         pbds_priority_queue_text_push_timing_test_local.svg,
1898         pbds_rationale_null_node_updator.png,
1899         pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
1900         pbds_simple_list.png,
1901         pbds_text_find_timing_test_hash_local.pdf,
1902         pbds_text_find_timing_test_hash_local.png,
1903         pbds_text_find_timing_test_hash_local.svg,
1904         pbds_text_find_timing_test_tree_like_local.pdf,
1905         pbds_text_find_timing_test_tree_like_local.png,
1906         pbds_text_find_timing_test_tree_like_local.svg,
1907         pbds_tree_node_invalidations.png,
1908         pbds_tree_node_invariants.png,
1909         pbds_tree_node_updator_policy_cd.png,
1910         pbds_tree_order_statistics_timing_test_local.pdf,
1911         pbds_tree_order_statistics_timing_test_local.png,
1912         pbds_tree_order_statistics_timing_test_local.svg,
1913         pbds_tree_split_join_timing_test_local.pdf,
1914         pbds_tree_split_join_timing_test_local.png,
1915         pbds_tree_split_join_timing_test_local.svg,
1916         pbds_tree_text_insert_timing_test_node_tree_local.pdf,
1917         pbds_tree_text_insert_timing_test_node_tree_local.png,
1918         pbds_tree_text_insert_timing_test_node_tree_local.svg,
1919         pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
1920         pbds_tree_text_insert_timing_test_pat_trie_local.png,
1921         pbds_tree_text_insert_timing_test_pat_trie_local.svg,
1922         pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
1923         pbds_tree_text_insert_timing_test_vector_tree_local.png,
1924         pbds_tree_text_insert_timing_test_vector_tree_local.svg,
1925         pbds_tree_text_lor_find_timing_test_local.pdf,
1926         pbds_tree_text_lor_find_timing_test_local.png,
1927         pbds_tree_text_lor_find_timing_test_local.svg,
1928         pbds_trie_node_updator_policy_cd.png,
1929         pbds_update_seq_diagram.png): Add.
1930
1931         * doc/html/ext/pb_ds: Remove.
1932         * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
1933         assoc_container_tag_cd.svg, assoc_container_traits.html,
1934         assoc_design.html, assoc_examples.html,
1935         associative_container_tag.html, assoc_performance_tests.html,
1936         assoc_regression_tests.html, assoc_tests.html,
1937         balls_and_bins.png, basic_hash_table.html,
1938         basic_hash_tag.html, basic_invalidation_guarantee.html,
1939         basic_tree_assoc_container_const_node_iterator.html,
1940         basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
1941         binary_priority_queue_random_int_push_timing_test_gcc.png,
1942         binary_priority_queue_random_int_push_timing_test_local.png,
1943         binary_priority_queue_random_int_push_timing_test_msvc.png,
1944         binomial_heap_tag.html,
1945         ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
1946         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
1947         ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
1948         cc_hash_max_collision_check_resize_trigger.html,
1949         cc_hash_random_int_find_timing_test_gcc.png,
1950         cc_hash_random_int_find_timing_test_local.png,
1951         cc_hash_random_int_find_timing_test_msvc.png,
1952         cc_hash_random_int_subscript_timing_test_find_gcc.png,
1953         cc_hash_random_int_subscript_timing_test_find_local.png,
1954         cc_hash_random_int_subscript_timing_test_find_msvc.png,
1955         cc_hash_random_int_subscript_timing_test_insert_gcc.png,
1956         cc_hash_random_int_subscript_timing_test_insert_local.png,
1957         cc_hash_random_int_subscript_timing_test_insert_msvc.png,
1958         cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
1959         concepts.html, contact.html, container_base.html,
1960         container_cd.png, container_cd.svg, container_tag.html,
1961         counter_lu_policy.html, design.html,
1962         different_underlying_dss.png, direct_mask_range_hashing.html,
1963         direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
1964         embedded_lists_1.png, embedded_lists_2.png,
1965         embedded_lists_3.png, examples.html, exceptions.html,
1966         gp_hash_random_int_find_timing_test_gcc.png,
1967         gp_hash_random_int_find_timing_test_local.png,
1968         gp_hash_random_int_find_timing_test_msvc.png,
1969         gp_hash_random_int_subscript_timing_test_find_gcc.png,
1970         gp_hash_random_int_subscript_timing_test_find_local.png,
1971         gp_hash_random_int_subscript_timing_test_find_msvc.png,
1972         gp_hash_random_int_subscript_timing_test_insert_gcc.png,
1973         gp_hash_random_int_subscript_timing_test_insert_local.png,
1974         gp_hash_random_int_subscript_timing_test_insert_msvc.png,
1975         gp_hash_table.html, gp_hash_tag.html,
1976         hash_based_containers.html, hash_exponential_size_policy.html,
1977         hash_load_check_resize_trigger.html, hash_policy_cd.png,
1978         hash_prime_size_policy.html,
1979         hash_random_int_erase_mem_usage_test_gcc.png,
1980         hash_random_int_erase_mem_usage_test.html,
1981         hash_random_int_erase_mem_usage_test_local.png,
1982         hash_random_int_erase_mem_usage_test_msvc.png,
1983         hash_random_int_find_find_timing_test.html,
1984         hash_random_int_subscript_find_timing_test.html,
1985         hash_random_int_subscript_insert_timing_test.html,
1986         hash_ranged_hash_range_hashing_fns.png,
1987         hash_range_hashing_seq_diagram2.png,
1988         hash_range_hashing_seq_diagram.png,
1989         hash_standard_resize_policy.html,
1990         hash_text_find_find_timing_test.html,
1991         hash_zlob_random_int_find_find_timing_test.html,
1992         hash_zlob_random_int_find_timing_test_gcc.png,
1993         hash_zlob_random_int_find_timing_test_local.png,
1994         hash_zlob_random_int_find_timing_test_msvc.png, index.html,
1995         insert_error.html, insert_resize_sequence_diagram1.png,
1996         insert_resize_sequence_diagram2.png,
1997         insert_resize_sequence_diagram3.png, interface.html,
1998         introduction.html, invalidation_guarantee_cd.png,
1999         invalidation_guarantee_erase.png, join_error.html,
2000         linear_probe_fn.html, list_update.html, list_update_tag.html,
2001         lu_based_containers.html, lu.png, misc.html, motivation.html,
2002         move_to_front_lu_policy.html,
2003         multimap_text_find_timing_test_large.html,
2004         multimap_text_find_timing_test_large_s2p_hash_gcc.png,
2005         multimap_text_find_timing_test_large_s2p_hash_local.png,
2006         multimap_text_find_timing_test_large_s2p_hash_msvc.png,
2007         multimap_text_find_timing_test_large_s2p_tree_gcc.png,
2008         multimap_text_find_timing_test_large_s2p_tree_local.png,
2009         multimap_text_find_timing_test_large_s2p_tree_msvc.png,
2010         multimap_text_find_timing_test_small.html,
2011         multimap_text_find_timing_test_small_s2p_hash_gcc.png,
2012         multimap_text_find_timing_test_small_s2p_hash_local.png,
2013         multimap_text_find_timing_test_small_s2p_hash_msvc.png,
2014         multimap_text_find_timing_test_small_s2p_tree_gcc.png,
2015         multimap_text_find_timing_test_small_s2p_tree_local.png,
2016         multimap_text_find_timing_test_small_s2p_tree_msvc.png,
2017         multimap_text_insert_mem_usage_test_large.html,
2018         multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
2019         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
2020         multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
2021         multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
2022         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
2023         multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
2024         multimap_text_insert_mem_usage_test_small.html,
2025         multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
2026         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
2027         multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
2028         multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
2029         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
2030         multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
2031         multimap_text_insert_timing_test_large.html,
2032         multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
2033         multimap_text_insert_timing_test_large_s2p_hash_local.png,
2034         multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
2035         multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
2036         multimap_text_insert_timing_test_large_s2p_tree_local.png,
2037         multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
2038         multimap_text_insert_timing_test_small.html,
2039         multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
2040         multimap_text_insert_timing_test_small_s2p_hash_local.png,
2041         multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
2042         multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
2043         multimap_text_insert_timing_test_small_s2p_tree_local.png,
2044         multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
2045         node_invariant_invalidations.png, node_invariants.png,
2046         null_hash_fn.html, null_lu_metadata.html,
2047         null_mapped_type.html, null_probe_fn.html,
2048         null_tree_node_update.html, null_trie_node_update.html,
2049         ov_tree_tag.html, pairing_heap_tag.html,
2050         pairing_priority_queue_text_push_pop_timing_test_gcc.png,
2051         pairing_priority_queue_text_push_pop_timing_test_local.png,
2052         pairing_priority_queue_text_push_pop_timing_test_msvc.png,
2053         pairing_priority_queue_text_push_timing_test_gcc.png,
2054         pairing_priority_queue_text_push_timing_test_local.png,
2055         pairing_priority_queue_text_push_timing_test_msvc.png,
2056         pat_trie.png, pat_trie_tag.html,
2057         point_invalidation_guarantee.html, point_iterators_cd.png,
2058         point_iterators_range_ops_1.png,
2059         point_iterators_range_ops_2.png, pq_container_traits.html,
2060         pq_design.html, pq_different_underlying_dss.png,
2061         pq_examples.html, pq_performance_tests.html,
2062         pq_regression_tests.html, pq_tests.html, prerequisites.html,
2063         priority_queue.html,
2064         priority_queue_random_int_push_pop_timing_test_gcc.png,
2065         priority_queue_random_int_push_pop_timing_test.html,
2066         priority_queue_random_int_push_pop_timing_test_local.png,
2067         priority_queue_random_int_push_pop_timing_test_msvc.png,
2068         priority_queue_random_int_push_timing_test_gcc.png,
2069         priority_queue_random_int_push_timing_test.html,
2070         priority_queue_random_int_push_timing_test_local.png,
2071         priority_queue_random_int_push_timing_test_msvc.png,
2072         priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
2073         priority_queue_tag.html,
2074         priority_queue_text_join_timing_test_gcc.png,
2075         priority_queue_text_join_timing_test.html,
2076         priority_queue_text_join_timing_test_local.png,
2077         priority_queue_text_join_timing_test_msvc.png,
2078         priority_queue_text_modify_down_timing_test_gcc.png,
2079         priority_queue_text_modify_down_timing_test.html,
2080         priority_queue_text_modify_down_timing_test_local.png,
2081         priority_queue_text_modify_down_timing_test_msvc.png,
2082         priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
2083         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
2084         priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
2085         priority_queue_text_modify_up_timing_test_gcc.png,
2086         priority_queue_text_modify_up_timing_test.html,
2087         priority_queue_text_modify_up_timing_test_local.png,
2088         priority_queue_text_modify_up_timing_test_msvc.png,
2089         priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
2090         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
2091         priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
2092         priority_queue_text_pop_mem_usage_test_gcc.png,
2093         priority_queue_text_pop_mem_usage_test.html,
2094         priority_queue_text_pop_mem_usage_test_local.png,
2095         priority_queue_text_pop_mem_usage_test_msvc.png,
2096         priority_queue_text_push_pop_timing_test_gcc.png,
2097         priority_queue_text_push_pop_timing_test.html,
2098         priority_queue_text_push_pop_timing_test_local.png,
2099         priority_queue_text_push_pop_timing_test_msvc.png,
2100         priority_queue_text_push_timing_test_gcc.png,
2101         priority_queue_text_push_timing_test.html,
2102         priority_queue_text_push_timing_test_local.png,
2103         priority_queue_text_push_timing_test_msvc.png,
2104         PythonPoweredSmall.gif quadratic_probe_fn.html,
2105         random_int_find_find_timing_test_tree_gcc.png,
2106         random_int_find_find_timing_test_tree_local.png,
2107         random_int_find_find_timing_test_tree_msvc.png,
2108         range_invalidation_guarantee.html,
2109         rationale_null_node_updator.png, rb_tree_tag.html,
2110         rc_binomial_heap_tag.html, references.html, resize_error.html,
2111         resize_policy_cd.png, restoring_node_invariants.png,
2112         sample_probe_fn.html, sample_ranged_hash_fn.html,
2113         sample_ranged_probe_fn.html, sample_range_hashing.html,
2114         sample_resize_policy.html, sample_resize_trigger.html,
2115         sample_size_policy.html, sample_tree_node_update.html,
2116         sample_trie_access_traits.html, sample_trie_node_update.html,
2117         sample_update_policy.html, simple_list.png,
2118         splay_tree_tag.html, tests.html,
2119         text_find_timing_test_hash_gcc.png,
2120         text_find_timing_test_hash_local.png,
2121         text_find_timing_test_hash_msvc.png,
2122         text_find_timing_test_tree_like_gcc.png,
2123         text_find_timing_test_tree_like_local.png,
2124         text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
2125         tree_based_containers.html, tree.html,
2126         tree_node_iterator.html, tree_node_updator_policy_cd.png,
2127         tree_order_statistics_node_update.html,
2128         tree_order_statistics_timing_test_gcc.png,
2129         tree_order_statistics_timing_test.html,
2130         tree_order_statistics_timing_test_local.png,
2131         tree_order_statistics_timing_test_msvc.png,
2132         tree_random_int_find_find_timing_test.html,
2133         tree_split_join_timing_test_gcc.png,
2134         tree_split_join_timing_test.html,
2135         tree_split_join_timing_test_local.png,
2136         tree_split_join_timing_test_msvc.png, tree_tag.html,
2137         tree_text_find_find_timing_test.html,
2138         tree_text_insert_timing_test.html,
2139         tree_text_insert_timing_test_node_tree_gcc.png,
2140         tree_text_insert_timing_test_node_tree_local.png,
2141         tree_text_insert_timing_test_node_tree_msvc.png,
2142         tree_text_insert_timing_test_pat_trie_gcc.png,
2143         tree_text_insert_timing_test_pat_trie_local.png,
2144         tree_text_insert_timing_test_pat_trie_msvc.png,
2145         tree_text_insert_timing_test_vector_tree_gcc.png,
2146         tree_text_insert_timing_test_vector_tree_local.png,
2147         tree_text_insert_timing_test_vector_tree_msvc.png,
2148         tree_text_lor_find_find_timing_test.html,
2149         tree_text_lor_find_timing_test_gcc.png,
2150         tree_text_lor_find_timing_test_local.png,
2151         tree_text_lor_find_timing_test_msvc.png,
2152         trie_based_containers.html, trie_const_node_iterator.html,
2153         trie.html, trie_node_iterator.html,
2154         trie_node_updator_policy_cd.png,
2155         trie_order_statistics_node_update.html,
2156         trie_prefix_search_node_update.html,
2157         trie_string_access_traits.html, trie_tag.html,
2158         trivial_iterator_tag.html, tutorial.html,
2159         update_policy_cd.png, update_seq_diagram.png): Remove.
2160
2161 2011-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2162
2163         PR c++/49813
2164         * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
2165
2166 2011-07-27  Jeffrey Yasskin  <jyasskin@google.com>
2167
2168         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
2169
2170 2011-07-25  Benjamin Kosnik  <bkoz@redhat.com>
2171
2172         * include/std/array (at): Remove constexpr when -fno-exceptions.
2173         * testsuite/23_containers/array/at_neg.cc: Test.
2174
2175 2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
2176             Nathan Ridge  <zeratul976@hotmail.com>
2177
2178         PR libstdc++/49836
2179         * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
2180         Declare.
2181         (vector<>::push_back(const value_type&)): Use it.
2182         * include/bits/vector.tcc: Define.
2183         (vector<>::emplace_back(_Args&&...)): Use it.
2184         * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
2185         Add.
2186         * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
2187         * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
2188         Likewise.
2189         * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
2190         Likewise.
2191         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2192         Adjust dg-error line number.
2193         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2194         Likewise.
2195         * testsuite/23_containers/vector/requirements/dr438/
2196         constructor_1_neg.cc: Likewise.
2197         * testsuite/23_containers/vector/requirements/dr438/
2198         constructor_2_neg.cc: Likewise.
2199
2200 2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
2201
2202         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
2203         _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
2204
2205 2011-07-24  François Dumont  <francois.cppdevs@free.fr>
2206
2207         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
2208         __builtin_floor rather than __builtin_ceil to compute next resize
2209         value.
2210         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
2211         New.
2212
2213 2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
2214             Daniel Krugler  <daniel.kruegler@googlemail.com>
2215
2216         * include/bits/move.h (move, forward): Mark constexpr.
2217         * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
2218         * testsuite/20_util/pair/make_pair/constexpr.cc: New.
2219         * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
2220
2221 2011-07-22  Ian Lance Taylor  <iant@google.com>
2222
2223         * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
2224         * Makefile.in: Rebuild.
2225         * doc/Makefile.in: Rebuild.
2226         * include/Makefile.in: Rebuild.
2227         * libsupc++/Makefile.in: Rebuild.
2228         * po/Makefile.in: Rebuild.
2229         * python/Makefile.in: Rebuild.
2230         * src/Makefile.in: Rebuild.
2231         * testsuite/Makefile.in: Rebuild.
2232
2233 2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>
2234
2235         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
2236         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
2237         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
2238         * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
2239         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
2240         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
2241         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
2242         * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
2243
2244         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
2245         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
2246         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
2247         * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
2248         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
2249         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
2250         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
2251         * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
2252
2253         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
2254         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
2255         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2256         Move...
2257         * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
2258         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
2259         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
2260         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2261         Move...
2262         * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
2263
2264         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
2265         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
2266         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
2267         * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
2268
2269         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
2270         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
2271         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
2272         * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
2273
2274 2011-07-21  François Dumont  <francois.cppdevs@free.fr>
2275
2276         * include/debug/safe_unordered_sequence.h,
2277         safe_unordered_sequence.tcc: Rename respectively in...
2278         * include/debug/safe_unordered_container.h,
2279         safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
2280         rename _Safe_unordered_container.
2281         * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
2282         rename _Safe_unordered_container_base.
2283         * include/debug/unordered_map, unordered_set: Adapt to previous
2284         modifications.
2285         * config/abi/pre/gnu.ver: Likewise.
2286         * src/debug.cc: Likewise.
2287         * include/Makefile.am: Likewise.
2288         * include/Makefile.in: Regenerate.
2289
2290 2011-07-21  Paolo Carlini  <paolo.carlini@oracle.com>
2291
2292         * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
2293         to use steady_clock instead of monotonic_clock.
2294         * config/abi/pre/gnu.ver: Export steady_clock::now.
2295
2296 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2297             Daniel Krugler  <daniel.kruegler@googlemail.com>
2298
2299         * include/std/array (array::at, array::operator[]): Mark constexpr.
2300         * testsuite/23_containers/array/requirements/
2301         constexpr_element_access.cc: Add.
2302
2303 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2304             Daniel Krugler  <daniel.kruegler@googlemail.com>
2305
2306         * include/std/chrono: (system_clock::is_steady): Update to N3291
2307         from is_monotonic.
2308         (time_point): Mark nonmember arithmetic operators constexpr.
2309         * src/chrono.cc: Modify for above.
2310         * src/compatibility-c++0x.cc: Same.
2311         * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
2312         * testsuite/20_util/time_point/1.cc: Modify.
2313         * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
2314         * testsuite/20_util/system_clock/1.cc: Modify.
2315         * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
2316         * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
2317         * testsuite/30_threads/condition_variable/members/2.cc: Modify.
2318         * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
2319
2320 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2321
2322         * include/std/system_error: Use noexcept.
2323         * src/system_error.cc: Likewise.
2324         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
2325         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
2326         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
2327         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
2328         * testsuite/util/testsuite_error.h: Likewise.
2329
2330         * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
2331         Use enable_if on template parameter default.
2332         (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
2333
2334 2011-07-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
2335
2336         * include/precompiled/stdc++.h: Add scoped_allocator.
2337
2338 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2339
2340         * include/std/bitset (operator[]): Make constexpr.
2341         * testsuite/23_containers/bitset/operations/constexpr.cc: New.
2342
2343 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2344
2345         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
2346         _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
2347         Fix typo.
2348
2349 2011-07-19  François Dumont  <francois.cppdevs@free.fr>
2350
2351         * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
2352         safe_unordered_sequence.tcc, safe_local_iterator.h,
2353         safe_local_iterator.tcc: New, support for unordered sequence safe
2354         local iterators.
2355         * include/Makefile.am: Add previous files.
2356         * include/Makefile.in: Regenerate.
2357         * include/debug/unordered_map, unordered_set: Implement
2358         _Safe_unordered_sequence and expose _Safe_local_iterator.
2359         * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
2360         _Safe_iterator::_M_get_distance static method to expose it as
2361         __get_distance function and use it in _Safe_local_iterator type.
2362         * include/debug/formatter.h: Add __msg_local_iter_compare_bad
2363         _Debug_msg_id enum entry to notify invalid comparison between local
2364         iterators from different buckets. Add _Parameter constructor from
2365         _Safe_local_iterator.
2366         * include/debug/functions.h: Add __valid_range overload for
2367         _Safe_local_iterator.
2368         * src/debug.cc: Add _Safe_unordered_sequence_base and
2369         _Safe_local_iterator_base methods implementations.
2370         * config/abi/pre/gnu.ver: Add export of some
2371         _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
2372         * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
2373         simulate use of a singular iterator.
2374         * testsuite/util/debug/unordered_checks.h: New, several functions
2375         to simulate classic invalid usage of unordered sequence local
2376         iterators.
2377         * testsuite/23_containers/unordered_map/debug/
2378         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2379         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2380         invalid_local_iterator_compare_neg.cc: New.
2381         * testsuite/23_containers/unordered_multimap/debug/
2382         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2383         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2384         invalid_local_iterator_compare_neg.cc: New.
2385         * testsuite/23_containers/unordered_set/debug/
2386         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2387         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2388         invalid_local_iterator_compare_neg.cc: New.
2389         * testsuite/23_containers/unordered_multiset/debug/
2390         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2391         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2392         invalid_local_iterator_compare_neg.cc: New.
2393
2394 2011-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
2395
2396         PR libstdc++/48430
2397         * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
2398         __hash_base.
2399         * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
2400
2401 2011-07-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2402
2403         * crossconfig.m4 (*-netware): Remove.
2404         * configure: Regenerate.
2405
2406 2011-07-15  Yufeng Zhang  <yufeng.zhang@arm.com>
2407
2408         * config/locale/newlib/ctype_members.cc: New file.
2409         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
2410         kind: newlib.  Configure to use the newlib specific
2411         ctype_members.cc when with_newlib is enabled.
2412         * configure: Regenerate.
2413
2414 2011-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
2415             Jakub Jelinek  <jakub@redhat.com>
2416
2417         PR libstdc++/49745
2418         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
2419         _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
2420         * libsupc++/guard.cc: Include <unistd.h>.
2421         * testsuite/17_intro/headers/c++1998/49745.cc: New.
2422         * configure: Regenerate.
2423         * config.h.in: Likewise.
2424
2425 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2426
2427         PR libstdc++/49559
2428         * include/bits/stl_algo.h (__move_merge_backward): Remove.
2429         (__move_merge_adaptive, __move_merge_adaptive_backward): New.
2430         (__merge_adaptive): Use the latter two.
2431         (__rotate_adaptive): Avoid self move-assignment.
2432         * include/bits/stl_algobase.h (move_backward): Fix comment.
2433         * testsuite/25_algorithms/stable_sort/49559.cc: New.
2434         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
2435         * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
2436         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
2437         * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
2438         (rvalstruct&&)): Check for self move-assignment.
2439
2440 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2441
2442         * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
2443         operator=(const propagating_allocator<>&)): Retun *this.
2444
2445 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2446
2447         * include/Makefile.am: Add new header.
2448         * include/Makefile.in: Regenerate.
2449         * include/std/scoped_allocator: New.
2450         * doc/xml/manual/status_cxx200x.xml: Update.
2451         * testsuite/20_util/scoped_allocator/1.cc: New.
2452         * testsuite/20_util/scoped_allocator/propagation.cc: New.
2453         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
2454         * testsuite/20_util/scoped_allocator/requirements/
2455         explicit_instantiation.cc: New.
2456
2457 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2458
2459         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
2460         * include/bits/vector.tcc: Likewise.
2461         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
2462         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
2463         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
2464         * testsuite/23_containers/vector/allocator/copy.cc: New.
2465         * testsuite/23_containers/vector/allocator/swap.cc: New.
2466         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
2467         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2468         Adjust dg-error line numbers.
2469         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2470         Likewise.
2471         * testsuite/23_containers/vector/requirements/dr438/
2472         constructor_1_neg.cc: Likewise.
2473         * testsuite/23_containers/vector/requirements/dr438/
2474         constructor_2_neg.cc: Likewise.
2475
2476 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2477
2478         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
2479         trait, provide partial specializations for known allocators.
2480         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
2481         non-standard pointer types.
2482         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
2483         (__alloc_traits::_S_nothrow_move): Likewise.
2484         (__alloc_traits::_S_nothrow_swap): Likewise.
2485
2486 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2487
2488         * include/ext/cast.h: Fix typo in include guard.
2489         * include/ext/pointer.h (_Unqualified_type): Remove redundant
2490         partial specializations for volatile types. Fix typos in comments.
2491         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
2492
2493 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2494
2495         PR libstdc++/49668
2496         * include/std/functional (__bind_simple): Define.
2497         * include/std/future (_Task_setter): Parameterize by type of result
2498         pointer instead of state object.
2499         (_S_task_setter): Type deduction helper.
2500         (_Task_state): Use _S_task_setter and __bind_simple.
2501         (_Deferred_state, _Async_state): Store call wrapper directly not as
2502         std::function. Use _S_task_setter and __bind_simple.
2503         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
2504         (async): Use new functions and __bind_simple.
2505         * include/std/mutex (call_once): Use __bind_simple.
2506         * include/std/thread (thread): Likewise. Remove unused headers.
2507         * src/thread.cc: Add header.
2508         * testsuite/30_threads/async/49668.cc: New.
2509         * testsuite/30_threads/call_once/49668.cc: New.
2510         * testsuite/30_threads/thread/cons/49668.cc: New.
2511         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
2512
2513 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2514
2515         * configure.host (abi_baseline_subdir_switch): Describe.
2516         Provide default.
2517         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
2518         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
2519         baseline_subdir_switch.
2520         * testsuite/Makefile.am (site.exp): Emit it.
2521         (baseline_subdir): Use it.
2522         * testsuite/libstdc++-abi/abi.exp: Use it.
2523         * configure: Regenerate.
2524         * Makefile.in: Regenerate.
2525         * doc/Makefile.in: Regenerate.
2526         * include/Makefile.in: Regenerate.
2527         * libsupc++/Makefile.in: Regenerate.
2528         * po/Makefile.in: Regenerate.
2529         * python/Makefile.in: Regenerate.
2530         * src/Makefile.in: Regenerate.
2531         * testsuite/Makefile.in: Regenerate.
2532
2533 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
2534
2535         * include/debug/set.h, unordered_map, multiset.h, forward_list,
2536         unordered_set, vector, deque, string, list, multimap.h: Remove
2537         base class default constructor calls.
2538         * include/debug/map.h: Likewise and cleanup several redefinition of
2539         base iterator typedef.
2540
2541 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
2542
2543         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
2544         thrown object here.  Return succeded_with_ptr_to_base for all
2545         pointer cases.
2546
2547 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
2548
2549         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
2550         C++0x mode.
2551         * testsuite/25_algorithms/sort/35588.cc: Likewise.
2552         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
2553
2554 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2555
2556         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
2557
2558 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2559
2560         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
2561         warning.
2562
2563 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2564
2565         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
2566         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
2567         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
2568         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
2569         Likewise.
2570         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2571         * testsuite/20_util/bind/socket.cc: Likewise.
2572         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
2573         * testsuite/util/testsuite_random.h: Likewise.
2574
2575 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2576
2577         * include/Makefile.am: Add alloc_traits.h headers.
2578         * include/Makefile.in: Regenerate.
2579         * include/std/memory: Include uses_allocator.h explicitly.
2580         * include/bits/allocator.h (allocator_traits): Move to ...
2581         * include/bits/alloc_traits.h: New header.
2582         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
2583         a common allocator interface for C++98 and C++0x.
2584         * include/bits/stl_construct.h: Use __alloc_traits.
2585         * include/bits/stl_uninitialized.h: Likewise.
2586
2587 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
2588             Paolo Carlini  <paolo.carlini@oracle.com>
2589
2590         * include/bits/move.h (__is_nothrow_swappable): Add.
2591         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
2592         * include/bits/algorithmfwd.h: Adjust.
2593         * testsuite/25_algorithms/swap/noexcept.cc: New.
2594
2595 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
2596
2597         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
2598         check-DEJAGNUnormal[4-9].
2599         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
2600         * testsuite/Makefile.in: Regenerated.
2601
2602 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
2603             Paolo Carlini  <paolo.carlini@oracle.com>
2604
2605         * include/std/tuple (__conv_types, __one_by_one_convertible,
2606         __all_convertible): Add.
2607         (tuple): Use the latter.
2608         (tuple<_T1>): Remove.
2609         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
2610         line number.
2611         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2612
2613 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2614
2615         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
2616         noexcept.
2617
2618 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2619
2620         * include/std/valarray (~valarray): Use noexcept.
2621         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
2622         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
2623         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
2624         Likewise.
2625         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
2626         Likewise.
2627         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
2628         Likewise.
2629
2630 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2631
2632         * include/std/functional: Use noexcept.
2633         * include/bits/stl_tempbuf.h: Likewise.
2634
2635 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
2636             Paolo Carlini  <paolo.carlini@oracle.com>
2637
2638         * include/bits/allocator.h (__shrink_to_fit): Rename to
2639         __shrink_to_fit_aux, fix.
2640         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
2641         (shrink_to_fit): Use the latter.
2642         * include/debug/vector (shrink_to_fit): Likewise.
2643         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
2644         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
2645         (shrink_to_fit): Use the latter.
2646         * include/debug/deque (shrink_to_fit): Likewise.
2647         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
2648         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
2649         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
2650         (shrink_to_fit): Use the latter.
2651         (reserve): Use _M_reallocate, move inline.
2652         (_Bvector_base<>::_S_nword): Add, use it throughout.
2653         * include/debug/string (shrink_to_fit): Redo.
2654         * include/ext/vstring.h (shrink_to_fit): Optimize.
2655         * include/bits/basic_string.h (shrink_to_fit): Likewise.
2656         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
2657         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
2658         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
2659         Likewise.
2660         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
2661         Likewise.
2662         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
2663
2664 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2665
2666         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
2667         mode by overloading to take allocator's pointer type.
2668         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
2669         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
2670         2.cc: New.
2671
2672 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2673
2674         * testsuite/20_util/allocator_traits/requirements/
2675         explicit_instantiation.cc: Add another instantiation.
2676
2677 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2678
2679         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
2680         for allocator_type and value_type.
2681
2682 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2683
2684         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
2685         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
2686
2687 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
2688
2689         * include/ext/throw_allocator.h: Use noexcept.
2690         * include/ext/pool_allocator.h: Likewise.
2691         * include/ext/bitmap_allocator.h: Likewise.
2692         * include/ext/new_allocator.h: Likewise.
2693         * include/ext/malloc_allocator.h: Likewise.
2694         * include/ext/array_allocator.h: Likewise.
2695         * include/ext/mt_allocator.h: Likewise.
2696         * include/ext/extptr_allocator.h: Likewise.
2697         * testsuite/util/testsuite_allocator.h: Likewise; do not include
2698         <cassert> directly, include <testsuite_hooks.h> instead.
2699
2700 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
2701
2702         * include/ext/pb_ds/*: Doxygen markup redo.
2703         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
2704         * include/Makefile.in: Regenerate.
2705
2706 2011-06-10  Jason Merrill  <jason@redhat.com>
2707
2708         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
2709
2710         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
2711         fix dg-error markup.
2712
2713 2011-06-09  Jason Merrill  <jason@redhat.com>
2714
2715         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
2716
2717         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
2718         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
2719         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2720         * testsuite/20_util/forward/1_neg.cc: Likewise.
2721         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
2722         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2723         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
2724         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
2725         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
2726         Likewise.
2727         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
2728         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
2729         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
2730         Likewise.
2731         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
2732         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
2733         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2734         Likewise.
2735         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2736         auto_ptr_rvalue_neg.cc: Likewise.
2737         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2738         Likewise.
2739         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2740         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2741         Likewise.
2742         * testsuite/23_containers/deque/requirements/dr438/
2743         constructor_1_neg.cc: Likewise.
2744         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2745         Likewise.
2746         * testsuite/23_containers/forward_list/requirements/dr438/
2747         assign_neg.cc: Likewise.
2748         * testsuite/23_containers/forward_list/requirements/dr438/
2749         constructor_1_neg.cc: Likewise.
2750         * testsuite/23_containers/forward_list/requirements/dr438/
2751         constructor_2_neg.cc: Likewise.
2752         * testsuite/23_containers/forward_list/requirements/dr438/
2753         insert_neg.cc: Likewise.
2754         * testsuite/23_containers/list/requirements/dr438/
2755         assign_neg.cc: Likewise.
2756         * testsuite/23_containers/list/requirements/dr438/
2757         constructor_1_neg.cc: Likewise.
2758         * testsuite/23_containers/list/requirements/dr438/
2759         constructor_2_neg.cc: Likewise.
2760         * testsuite/23_containers/list/requirements/dr438/
2761         insert_neg.cc: Likewise.
2762         * testsuite/23_containers/vector/requirements/dr438/
2763         assign_neg.cc: Likewise.
2764         * testsuite/23_containers/vector/requirements/dr438/
2765         constructor_1_neg.cc: Likewise.
2766         * testsuite/23_containers/vector/requirements/dr438/
2767         constructor_2_neg.cc: Likewise.
2768         * testsuite/23_containers/vector/requirements/dr438/
2769         insert_neg.cc: Likewise.
2770         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
2771         * testsuite/29_atomics/atomic_integral/operators/
2772         bitwise_neg.cc: Likewise.
2773         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2774         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
2775         * testsuite/decimal/operator_neg.cc: Likewise.
2776
2777 2011-06-09  Simon Baldwin  <simonb@google.com>
2778
2779         * scripts/extract_symvers.in: Handle processor/OS specific or
2780         unknown symbol binding strings from readelf.
2781
2782 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
2783
2784         * include/std/type_traits (__is_copy_assignable_impl,
2785         __is_nt_copy_assignable_impl): Fix typo.
2786
2787 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2788
2789         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
2790         instead of <limits>.
2791         * include/bits/allocator.h: Likewise.
2792
2793         * include/std/chrono (duration_values<>::min): Call lowest, not min.
2794
2795 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2796
2797         * include/bits/allocator.h (__shrink_to_fit): Simplify.
2798         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
2799         * include/bits/stl_deque.h: Likewise.
2800         * include/bits/stl_bvector.h: Likewise.
2801
2802 2011-06-07  Jason Merrill  <jason@redhat.com>
2803
2804         * testsuite/lib/prune.exp: s/required/instantiated/.
2805         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2806         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
2807         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2808         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2809         * testsuite/20_util/forward/1_neg.cc: Likewise.
2810         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
2811         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2812         Likewise.
2813         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2814         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2815         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
2816         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
2817         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
2818         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
2819         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2820         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2821         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2822         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2823         shared_ptr_neg.cc: Likewise.
2824
2825 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2826
2827         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
2828         (move_if_noexcept): Use the latter.
2829         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
2830         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
2831         * include/bits/stl_uninitialized.h
2832         (__uninitialized_move_if_noexcept_a): Add.
2833         * include/bits/vector.tcc (vector<>::reserve): Use
2834         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
2835         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
2836         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
2837         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
2838         Add.
2839         (copycounter::copycounter(copycounter&&)): Use noexcept.
2840         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
2841         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
2842         Likewise.
2843         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
2844         Likewise.
2845
2846 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2847
2848         PR libstdc++/49293
2849         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
2850         for glibc 2.14.
2851         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2852
2853 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
2854
2855         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
2856
2857 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2858
2859         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
2860         * include/ext/pointer.h (pointer_traits): Add partial specialization
2861         for _Pointer_adapter.
2862
2863 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2864
2865         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
2866         Update to C++0x definition using type to construct as template
2867         parameter.
2868         (tracker_allocator::destroy): Likewise for type to destroy.
2869         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
2870
2871 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
2872
2873         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
2874         Use std::move on the allocator, use noexcept.
2875         (_Hashtable<>::~_Hashtable): Use noexcept.
2876         * include/bits/stl_list.h: Likewise.
2877         * include/bits/forward_list.h: Likewise.
2878         * include/bits/stl_vector.h: Likewise.
2879         * include/bits/stl_bvector.h: Likewise.
2880         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
2881         * include/bits/stl_set.h: Likewise.
2882         * include/bits/stl_multimap.h: Likewise.
2883         * include/bits/stl_multiset.h: Likewise.
2884         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
2885         std::move on the allocator.
2886         (_Rb_tree<>::~_Rb_tree): Use noexcept.
2887         * include/bits/stl_deque.h: Likewise.
2888         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
2889         noexcept.
2890         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
2891         * include/debug/set.h: Adjust.
2892         * include/debug/unordered_map: Likewise.
2893         * include/debug/multiset.h: Likewise.
2894         * include/debug/forward_list: Likewise.
2895         * include/debug/vector: Likewise.
2896         * include/debug/unordered_set: Likewise.
2897         * include/debug/deque: Likewise.
2898         * include/debug/map.h: Likewise.
2899         * include/debug/string: Likewise.
2900         * include/debug/list: Likewise.
2901         * include/debug/multimap.h: Likewise.
2902         * include/profile/set.h: Likewise.
2903         * include/profile/unordered_map: Likewise.
2904         * include/profile/multiset.h: Likewise.
2905         * include/profile/forward_list: Likewise.
2906         * include/profile/unordered_set: Likewise.
2907         * include/profile/vector: Likewise.
2908         * include/profile/deque: Likewise.
2909         * include/profile/map.h: Likewise.
2910         * include/profile/list: Likewise.
2911         * include/profile/multimap.h: Likewise.
2912         * testsuite/21_strings/basic_string/cons/wchar_t/
2913         noexcept_move_construct.cc: New.
2914         * testsuite/21_strings/basic_string/cons/char/
2915         noexcept_move_construct.cc: Likewise.
2916         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
2917         * testsuite/23_containers/unordered_map/cons/
2918         noexcept_move_construct.cc: Likewise.
2919         * testsuite/23_containers/multimap/cons/
2920         noexcept_move_construct.cc: Likewise.
2921         * testsuite/23_containers/set/cons/
2922         noexcept_move_construct.cc: Likewise.
2923         * testsuite/23_containers/unordered_multimap/cons/
2924         noexcept_move_construct.cc: Likewise.
2925         * testsuite/23_containers/forward_list/cons/
2926         noexcept_move_construct.cc: Likewise.
2927         * testsuite/23_containers/unordered_set/cons/
2928         noexcept_move_construct.cc: Likewise.
2929         * testsuite/23_containers/vector/bool/cons/
2930         noexcept_move_construct.cc: Likewise.
2931         * testsuite/23_containers/vector/cons/
2932         noexcept_move_construct.cc: Likewise.
2933         * testsuite/23_containers/multiset/cons/
2934         noexcept_move_construct.cc: Likewise.
2935         * testsuite/23_containers/list/cons/
2936         noexcept_move_construct.cc: Likewise.
2937         * testsuite/23_containers/unordered_multiset/cons/
2938         noexcept_move_construct.cc: Likewise.
2939         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
2940         * testsuite/23_containers/forward_list/requirements/dr438/
2941         assign_neg.cc: Adjust dg-error line numbers.
2942         * testsuite/23_containers/forward_list/requirements/dr438/
2943         insert_neg.cc: Likewise.
2944         * testsuite/23_containers/forward_list/requirements/dr438/
2945         constructor_1_neg.cc: Likewise.
2946         * testsuite/23_containers/forward_list/requirements/dr438/
2947         constructor_2_neg.cc: Likewise.
2948         * testsuite/23_containers/vector/requirements/dr438/
2949         assign_neg.cc: Likewise.
2950         * testsuite/23_containers/vector/requirements/dr438/
2951         insert_neg.cc: Likewise.
2952         * testsuite/23_containers/vector/requirements/dr438/
2953         constructor_1_neg.cc: Likewise.
2954         * testsuite/23_containers/vector/requirements/dr438/
2955         constructor_2_neg.cc: Likewise.
2956         * testsuite/23_containers/deque/requirements/dr438/
2957         assign_neg.cc: Likewise.
2958         * testsuite/23_containers/deque/requirements/dr438/
2959         insert_neg.cc: Likewise.
2960         * testsuite/23_containers/deque/requirements/dr438/
2961         constructor_1_neg.cc: Likewise.
2962         * testsuite/23_containers/deque/requirements/dr438/
2963         constructor_2_neg.cc: Likewise.
2964         * testsuite/23_containers/list/requirements/dr438/
2965         assign_neg.cc: Likewise.
2966         * testsuite/23_containers/list/requirements/dr438/
2967         insert_neg.cc: Likewise.
2968         * testsuite/23_containers/list/requirements/dr438/
2969         constructor_1_neg.cc: Likewise.
2970         * testsuite/23_containers/list/requirements/dr438/
2971         constructor_2_neg.cc: Likewise.
2972
2973         * include/bits/move.h (swap): Use __and_ in the noexcept.
2974         * include/bits/algorithmfwd.h: Adjust.
2975
2976 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
2977
2978         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
2979         compare(const string&), which uses char_traits::compare, which
2980         isn't noexcept; also no noexcept in the move assignment operator
2981         and move assign, see c++std-lib-30855).
2982         * include/bits/basic_string.tcc: Likewise.
2983         * include/ext/vstring.h: Likewise.
2984         * include/ext/vstring.tcc: Likewise.
2985         * include/debug/string: Likewise.
2986
2987 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2988
2989         * doc/xml/manual/status_cxx200x.xml: Update.
2990         * doc/html/*: Regenerate.
2991
2992 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2993
2994         * include/std/type_traits (__or_, __and_): Add trivial definitions
2995         for a single element.
2996         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
2997         constraints.
2998         (pair<>::pair(pair&&)): Define.
2999         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
3000         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
3001         * include/std/tuple: Use __and_ in noexcept specs and constraints.
3002         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
3003         _Tuple_impl&&)): Remove noexcept.
3004         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
3005         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
3006         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
3007         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
3008         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3009         Adjust dg-error line numbers.
3010         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3011         Likewise.
3012         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3013         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
3014         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3015
3016 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
3017
3018         * include/std/tuple: Restore is_convertible constraint.
3019         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
3020
3021 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
3022
3023         PR libstdc++/49236
3024         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3025         line number.
3026
3027 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
3028
3029         * include/std/tuple: Implement uses-allocator construction.
3030         * include/bits/allocator.h (uses_allocator): Move to ...
3031         * include/bits/uses_allocator.h: New file.
3032         * include/Makefile.am: Add new header.
3033         * include/Makefile.in: Regenerate.
3034         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
3035         * testsuite/20_util/uses_allocator/construction.cc: New.
3036         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
3037         * testsuite/20_util/tuple/cons/allocators.cc: New.
3038
3039 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3040
3041         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
3042
3043 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3044
3045         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
3046         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
3047         * configure.ac: Use them. Increase minor version.
3048         * configure: Regenerate.
3049         * config.h.in: Regenerate.
3050         * include/std/thread (thread::hardware_concurrency): Remove inline
3051         definition.
3052         * src/thread.cc (thread::hardware_concurrency): Define.
3053         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
3054         * testsuite/util/testsuite_abi.cc: Add new version.
3055         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
3056         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
3057         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
3058         dg-require-nprocs and verify hardware_concurrency returns non-zero.
3059
3060 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3061
3062         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
3063
3064 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3065
3066         * include/Makefile.am: Add new ptr_traits.h header.
3067         * include/Makefile.in: Regenerate.
3068         * include/bits/ptr_traits.h (pointer_traits): New.
3069         * include/bits/allocator.h (allocator_traits): Add.
3070         * include/ext/array_allocator.h (construct, destroy): Update C++0x
3071         versions.
3072         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
3073         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
3074         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
3075         * include/ext/mt_allocator.h (construct, destroy): Likewise.
3076         * include/ext/new_allocator.h (construct, destroy): Likewise.
3077         * include/ext/pool_allocator.h (construct, destroy): Likewise.
3078         * include/ext/throw_allocator.h (construct, destroy): Likewise.
3079         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
3080         * testsuite/20_util/allocator_traits/requirements/
3081         explicit_instantiation.cc: New.
3082         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
3083         * testsuite/20_util/allocator_traits/members/select.cc: New.
3084         * testsuite/20_util/allocator_traits/members/construct.cc: New.
3085         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
3086         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
3087         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
3088         * testsuite/20_util/pointer_traits/requirements/
3089         explicit_instantiation.cc: New.
3090
3091 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3092
3093         * include/std/future (launch): Update enumerators and define
3094         operators required for bitmask type. Remove trailing whitespace.
3095         * src/future.cc: Remove trailing whitespace.
3096         * testsuite/30_threads/async/any.cc: Adjust.
3097         * testsuite/30_threads/async/sync.cc: Adjust.
3098         * testsuite/30_threads/async/launch.cc: New.
3099
3100 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
3101
3102         * include/std/future: Use noexcept.
3103         * src/future.cc: Likewise.
3104
3105 2011-05-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
3106
3107         * include/std/thread (this_thread::sleep_until): Move after sleep_for.
3108
3109 2011-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
3110
3111         PR libstdc++/49187
3112         * include/parallel/losertree.h: Add missing using declarations
3113         of _Base::_M_comp.
3114         * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>.
3115         * include/parallel/multiway_merge.h: Include <parallel/
3116         multiseq_selection.h>, forward declare __merge_advance.
3117         * include/parallel/multiseq_selection.h: Don't include <parallel/
3118         sort.h> here.
3119         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix
3120         qualification of upper_bound.
3121
3122         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc:
3123         Use dg-require-debug-mode.
3124         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc:
3125         Likewise.
3126         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc:
3127         Likewise.
3128         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc:
3129         Likewise.
3130         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc:
3131         Likewise.
3132         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
3133         Likewise.
3134         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
3135         Likewise.
3136         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc:
3137         Likewise.
3138         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc:
3139         Likewise.
3140
3141         * include/parallel/algo.h: Minor uglification fixes.
3142
3143 2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
3144
3145         * src/list.cc: Use noexcept per the FDIS.
3146         * src/compatibility-list-2.cc: Likewise.
3147         * include/debug/set.h: Likewise.
3148         * include/debug/unordered_map: Likewise.
3149         * include/debug/multiset.h: Likewise.
3150         * include/debug/forward_list: Likewise.
3151         * include/debug/unordered_set: Likewise.
3152         * include/debug/vector: Likewise.
3153         * include/debug/map.h: Likewise.
3154         * include/debug/deque: Likewise.
3155         * include/debug/list: Likewise.
3156         * include/debug/multimap.h: Likewise.
3157         * include/profile/set.h: Likewise.
3158         * include/profile/unordered_map: Likewise.
3159         * include/profile/multiset.h: Likewise.
3160         * include/profile/forward_list: Likewise.
3161         * include/profile/vector: Likewise.
3162         * include/profile/unordered_set: Likewise.
3163         * include/profile/map.h: Likewise.
3164         * include/profile/deque: Likewise.
3165         * include/profile/list: Likewise.
3166         * include/profile/multimap.h: Likewise.
3167         * include/bits/hashtable.h: Likewise.
3168         * include/bits/stl_list.h: Likewise.
3169         * include/bits/stl_map.h: Likewise.
3170         * include/bits/hashtable_policy.h: Likewise.
3171         * include/bits/stl_set.h: Likewise.
3172         * include/bits/forward_list.h: Likewise.
3173         * include/bits/stl_multimap.h: Likewise.
3174         * include/bits/stl_vector.h: Likewise.
3175         * include/bits/stl_deque.h: Likewise.
3176         * include/bits/stl_multiset.h: Likewise.
3177         * include/bits/stl_bvector.h: Likewise.
3178         * include/bits/stl_tree.h: Likewise.
3179
3180 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3181
3182         * include/bits/stl_queue.h: Use noexcept per the FDIS.
3183         * include/bits/stl_stack.h: Likewise.
3184
3185 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3186
3187         * config/abi/pre/gnu.ver: Correct last change, export instead
3188         at the existing @3.4.16.
3189         * configure.ac: Revert last change.
3190         * testsuite/util/testsuite_abi.cc: Likewise.
3191         * configure: Regenerate.
3192
3193 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
3194
3195         * doc/xml/manual/documentation_hacking.xml: Minor corrections.
3196
3197 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
3198
3199         * include/std/mutex: Add doxygen comments.
3200
3201 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3202
3203         * config/abi/pre/gnu.ver: Export recently added  basic_streambuf
3204         and basic_stringbuf symbols @3.4.17.
3205         * configure.ac: Update.
3206         * testsuite/util/testsuite_abi.cc: Likewise.
3207         * configure: Regenerate.
3208
3209 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
3210
3211         * libsupc++/guard.cc: Fix comments.
3212
3213 2011-05-25  Ian Lance Taylor  <iant@google.com>
3214
3215         PR libstdc++/49060
3216         * include/backward/hashtable.h (hashtable::erase): Don't crash if
3217         erasing first and another element with a reference to the other
3218         element.
3219         * testsuite/backward/hash_set/49060.cc: New.
3220
3221 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3222
3223         * include/bits/random.h (random_device::min, max): Specify constexpr.
3224
3225 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
3226
3227         * include/std/thread: Use noexcept throughout per the FDIS.
3228         * include/std/mutex: Likewise.
3229
3230 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
3231
3232         * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
3233
3234 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
3235
3236         PR libstdc++/49151
3237         * include/std/chrono (operator+, operator-, operator*, operator/,
3238         operator&): Implement LWG 2020 [WP]; specify constexpr.
3239         * testsuite/20_util/duration/arithmetic/dr2020.cc: New.
3240
3241 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
3242
3243         PR libstdc++/49141
3244         * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
3245         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3246         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
3247
3248 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
3249
3250         * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
3251         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
3252         line number.
3253
3254 2011-05-23  Benjamin Kosnik  <bkoz@redhat.com>
3255
3256         PR libstdc++/37144
3257         PR libstdc++/28457
3258         Interface changes for ext/pb_ds.
3259         PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
3260         * include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
3261         (basic_hash_table, basic_branch, list_update): Derive from
3262         container_base_dispatch.
3263         * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
3264         (move_to_front_lu_policy): To lu_move_to_front_policy.
3265         (counter_lu_policy): To lu_counter_policy.
3266         * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
3267         * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
3268         template parameters, declare here.
3269         (null_mapped_type) Remove.
3270         (null_type): Just use this for template tricks everywhere.
3271         * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
3272         Remove.
3273         * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
3274         (string_trie_e_access_traits): To trie_string_access_traits.
3275         * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
3276
3277         File changes.
3278         * include/Makefile.am (pb_headers): Removed and changed file names.
3279         * include/Makefile.in: Regenerated.
3280         * include/ext/pb_ds/detail/basic_types.hpp: Remove.
3281         * include/ext/pb_ds/detail/bin_search_tree_/
3282           cond_dtor_entry_dealtor.hpp: Remove.
3283         * include/ext/pb_ds/detail/bin_search_tree_/
3284           cond_key_dtor_entry_dealtor.hpp: Remove.
3285         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
3286         * include/ext/pb_ds/detail/binary_heap_/
3287           point_const_iterator.hpp: ..here.
3288         * include/ext/pb_ds/detail/basic_tree_policy: Move to...
3289         * include/ext/pb_ds/detail/branch_policy: This.
3290         * include/ext/pb_ds/detail/branch_policy/
3291           basic_tree_policy_base.hpp: Move...
3292         * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
3293         * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
3294         * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
3295         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3296         null_metadata.hpp: Remove.
3297         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3298         const_point_iterator.hpp: Move...
3299         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3300         point_const_iterator.hpp: ...here.
3301         * include/ext/pb_ds/detail/list_update_policy/
3302         counter_lu_metadata.hpp: Move..
3303         * include/ext/pb_ds/detail/list_update_policy/
3304         lu_counter_metadata.hpp: ...here.
3305         * include/ext/pb_ds/detail/list_update_policy/
3306         counter_lu_policy_imp.hpp: Remove.
3307         * include/ext/pb_ds/detail/list_update_policy/
3308         mtf_lu_policy_imp.hpp: Remove.
3309         * include/ext/pb_ds/detail/trie_policy/
3310         string_trie_e_access_traits_imp.hpp: Move...
3311         * include/ext/pb_ds/detail/trie_policy/
3312         sample_trie_access_traits.hpp: ...here.
3313         * include/ext/pb_ds/detail/trie_policy/
3314         sample_trie_e_access_traits.hpp: Move...
3315         * include/ext/pb_ds/detail/trie_policy/
3316         trie_string_access_traits_imp.hpp: ...here.
3317         * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
3318         * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
3319         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
3320         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
3321         types found in the following files into pat_trie_base.
3322         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
3323         * include/ext/pb_ds/detail/pat_trie_/
3324           cond_dtor_entry_dealtor.hpp: Folded.
3325         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
3326         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
3327         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
3328         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
3329         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
3330         * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
3331         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
3332         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
3333         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
3334         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
3335         * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
3336         * include/ext/pb_ds/detail/unordered_iterator/
3337         const_point_iterator.hpp: Move...
3338         * include/ext/pb_ds/detail/unordered_iterator/
3339         point_const_iterator.hpp: ...here.
3340
3341
3342         Adjust for above changes.
3343         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
3344         * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
3345         * include/ext/pb_ds/detail/resize_policy/
3346           sample_resize_trigger.hpp: Same.
3347         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
3348         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
3349         * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
3350         * include/ext/pb_ds/detail/binomial_heap_base_/
3351           binomial_heap_base_.hpp: Same.
3352         * include/ext/pb_ds/detail/binomial_heap_base_/
3353           constructors_destructor_fn_imps.hpp: Same.
3354         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
3355         * include/ext/pb_ds/detail/binomial_heap_base_/
3356           split_join_fn_imps.hpp: Same.
3357         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
3358           for template parameter ordering change.
3359         * include/ext/pb_ds/detail/cc_hash_table_map_/
3360           erase_store_hash_fn_imps.hpp: Same.
3361         * include/ext/pb_ds/detail/cc_hash_table_map_/
3362           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3363         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
3364         * include/ext/pb_ds/detail/cc_hash_table_map_/
3365           insert_no_store_hash_fn_imps.hpp: Same.
3366         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
3367         * include/ext/pb_ds/detail/cc_hash_table_map_/
3368           policy_access_fn_imps.hpp: Same.
3369         * include/ext/pb_ds/detail/cc_hash_table_map_/
3370           resize_store_hash_fn_imps.hpp: Same.
3371         * include/ext/pb_ds/detail/cc_hash_table_map_/
3372           constructor_destructor_store_hash_fn_imps.hpp: Same.
3373         * include/ext/pb_ds/detail/cc_hash_table_map_/
3374           insert_store_hash_fn_imps.hpp: Same.
3375         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
3376         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
3377         * include/ext/pb_ds/detail/cc_hash_table_map_/
3378           entry_list_fn_imps.hpp: Same.
3379         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
3380         * include/ext/pb_ds/detail/cc_hash_table_map_/
3381           find_store_hash_fn_imps.hpp: Same.
3382         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
3383         * include/ext/pb_ds/detail/cc_hash_table_map_/
3384           debug_no_store_hash_fn_imps.hpp: Same.
3385         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
3386         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
3387         * include/ext/pb_ds/detail/cc_hash_table_map_/
3388           constructor_destructor_fn_imps.hpp: Same.
3389         * include/ext/pb_ds/detail/cc_hash_table_map_/
3390           cond_key_dtor_entry_dealtor.hpp: Same.
3391         * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
3392         * include/ext/pb_ds/detail/cc_hash_table_map_/
3393           debug_store_hash_fn_imps.hpp: Same.
3394         * include/ext/pb_ds/detail/cc_hash_table_map_/
3395           erase_no_store_hash_fn_imps.hpp: Same.
3396         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
3397         * include/ext/pb_ds/detail/cc_hash_table_map_/
3398           iterators_fn_imps.hpp: Same.
3399         * include/ext/pb_ds/detail/cc_hash_table_map_/
3400           resize_no_store_hash_fn_imps.hpp: Same.
3401         * include/ext/pb_ds/detail/cc_hash_table_map_/
3402           standard_policies.hpp: Same.
3403         * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
3404         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
3405         * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
3406         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
3407         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
3408         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
3409         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
3410         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
3411         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
3412         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
3413         * include/ext/pb_ds/detail/pat_trie_/
3414           constructors_destructor_fn_imps.hpp: Same.
3415         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
3416         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
3417         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
3418         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
3419         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
3420         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
3421         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
3422         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
3423         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
3424         * include/ext/pb_ds/detail/bin_search_tree_/
3425           policy_access_fn_imps.hpp: Same.
3426         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
3427         * include/ext/pb_ds/detail/bin_search_tree_/
3428           constructors_destructor_fn_imps.hpp: Same.
3429         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
3430         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
3431         * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
3432         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
3433         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
3434         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
3435         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
3436         * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
3437         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
3438         * include/ext/pb_ds/detail/bin_search_tree_/
3439           split_join_fn_imps.hpp: Same.
3440         * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
3441         * include/ext/pb_ds/detail/list_update_policy/
3442           sample_update_policy.hpp: Same.
3443         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3444           trace_fn_imps.hpp: Same.
3445         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3446           erase_fn_imps.hpp: Same.
3447         * include/ext/pb_ds/detail/gp_hash_table_map_/
3448           erase_store_hash_fn_imps.hpp: Same.
3449         * include/ext/pb_ds/detail/gp_hash_table_map_/
3450           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3451         * include/ext/pb_ds/detail/gp_hash_table_map_/
3452           insert_no_store_hash_fn_imps.hpp: Same.
3453         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
3454         * include/ext/pb_ds/detail/gp_hash_table_map_/
3455           policy_access_fn_imps.hpp: Same.
3456         * include/ext/pb_ds/detail/gp_hash_table_map_/
3457           resize_store_hash_fn_imps.hpp: Same.
3458         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
3459         * include/ext/pb_ds/detail/gp_hash_table_map_/
3460           constructor_destructor_store_hash_fn_imps.hpp: Same.
3461         * include/ext/pb_ds/detail/gp_hash_table_map_/
3462           insert_store_hash_fn_imps.hpp: Same.
3463         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
3464         * include/ext/pb_ds/detail/gp_hash_table_map_/
3465           iterator_fn_imps.hpp: Same.
3466         * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
3467         * include/ext/pb_ds/detail/gp_hash_table_map_/
3468           find_no_store_hash_fn_imps.hpp: Same.
3469         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
3470         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
3471         * include/ext/pb_ds/detail/gp_hash_table_map_/
3472           find_store_hash_fn_imps.hpp: Same.
3473         * include/ext/pb_ds/detail/gp_hash_table_map_/
3474           debug_no_store_hash_fn_imps.hpp: Same.
3475         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
3476         * include/ext/pb_ds/detail/gp_hash_table_map_/
3477           constructor_destructor_fn_imps.hpp: Same.
3478         * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
3479         * include/ext/pb_ds/detail/gp_hash_table_map_/
3480           debug_store_hash_fn_imps.hpp: Same.
3481         * include/ext/pb_ds/detail/gp_hash_table_map_/
3482           erase_no_store_hash_fn_imps.hpp: Same.
3483         * include/ext/pb_ds/detail/gp_hash_table_map_/
3484           resize_no_store_hash_fn_imps.hpp: Same.
3485         * include/ext/pb_ds/detail/gp_hash_table_map_/
3486           standard_policies.hpp: Same.
3487         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
3488         * include/ext/pb_ds/detail/types_traits.hpp: Same.
3489         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
3490         * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
3491         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
3492         * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
3493         * include/ext/pb_ds/detail/binary_heap_/
3494           constructors_destructor_fn_imps.hpp: Same.
3495         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
3496         * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
3497         * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
3498         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
3499         * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
3500         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
3501         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
3502         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
3503         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
3504         * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
3505         * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
3506         * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
3507         * include/ext/pb_ds/detail/tree_policy/
3508           sample_tree_node_update.hpp: Same.
3509         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
3510         * include/ext/pb_ds/detail/trie_policy/
3511           sample_trie_node_update.hpp: Same.
3512         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
3513         * include/ext/pb_ds/detail/trie_policy/
3514           prefix_search_node_update_imp.hpp: Same.
3515         * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
3516         * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
3517         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
3518           Adjust for template parameter change, fold into
3519           container_base_dispatch.
3520         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
3521         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
3522         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
3523         * include/ext/pb_ds/detail/pairing_heap_/
3524           constructors_destructor_fn_imps.hpp: Same.
3525         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
3526         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
3527         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
3528         * include/ext/pb_ds/detail/binomial_heap_/
3529           constructors_destructor_fn_imps.hpp: Same.
3530         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
3531         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
3532         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
3533         * include/ext/pb_ds/detail/type_utils.hpp: Same.
3534         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
3535         * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
3536         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3537           policy_access_fn_imps.hpp: Same.
3538         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3539           left_child_next_sibling_heap_.hpp: Same.
3540         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3541           const_iterator.hpp: Same.
3542         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3543           insert_fn_imps.hpp: Same.
3544         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3545           constructors_destructor_fn_imps.hpp: Same.
3546         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3547           debug_fn_imps.hpp: Same.
3548         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3549           node.hpp: Same.
3550         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3551           info_fn_imps.hpp: Same.
3552         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3553           iterators_fn_imps.hpp: Same.
3554         * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
3555         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
3556         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
3557         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
3558         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
3559         * include/ext/pb_ds/detail/thin_heap_/
3560           constructors_destructor_fn_imps.hpp: Same.
3561         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
3562         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
3563         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
3564         * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
3565         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
3566         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
3567         * include/ext/pb_ds/detail/ov_tree_map_/
3568           constructors_destructor_fn_imps.hpp: Same.
3569         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
3570         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
3571         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
3572         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
3573         * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
3574         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
3575         * include/ext/pb_ds/detail/debug_map_base.hpp: Same.
3576         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
3577         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
3578         * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
3579         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
3580         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
3581         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
3582         * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
3583         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
3584         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
3585         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
3586         * include/ext/pb_ds/detail/splay_tree_/
3587           constructors_destructor_fn_imps.hpp: Same.
3588         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
3589         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
3590         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
3591         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
3592         * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
3593         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
3594         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
3595         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
3596         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
3597         * include/ext/pb_ds/detail/list_update_map_/
3598           entry_metadata_base.hpp: Same.
3599         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
3600         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
3601         * include/ext/pb_ds/detail/list_update_map_/
3602           constructor_destructor_fn_imps.hpp: Same.
3603         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
3604         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
3605         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
3606         * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
3607         * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
3608         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
3609         * include/ext/pb_ds/detail/rc_binomial_heap_/
3610           rc_binomial_heap_.hpp: Same.
3611         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
3612         * include/ext/pb_ds/detail/rc_binomial_heap_/
3613           constructors_destructor_fn_imps.hpp: Same.
3614         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
3615         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
3616         * include/ext/pb_ds/detail/rc_binomial_heap_/
3617           split_join_fn_imps.hpp: Same.
3618         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
3619         * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
3620         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
3621         * include/ext/pb_ds/detail/rb_tree_map_/
3622           constructors_destructor_fn_imps.hpp: Same.
3623         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
3624         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
3625         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
3626         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
3627         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
3628         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
3629
3630
3631         Documentation changes.
3632         * include/ext/pb_ds/*: Add doxygen markup.
3633         * doc/doxygen/user.cfg.in: Add details for extracting comments
3634         from pb_ds.
3635         * scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
3636         * scripts/make_graph.py: Move to svg output. Re-format generated tables.
3637
3638         * doc/Makefile.am (stamp-html-copy): New rule.
3639         (stamp-html): Use it to copy non-generated files into html docs.
3640         * doc/Makefile.in: Regenerated.
3641
3642         * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
3643         * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
3644         * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
3645         * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
3646
3647         * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
3648         hash_random_int_erase_mem_usage_test_local.png,
3649         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
3650         tree_text_insert_timing_test_pat_trie_local.png ,
3651         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
3652         priority_queue_text_modify_down_timing_test_local.png,
3653         gp_hash_random_int_subscript_timing_test_find_local.png,
3654         text_find_timing_test_hash_local.png,
3655         multimap_text_insert_timing_test_small_s2p_hash_local.png,
3656         multimap_text_insert_timing_test_small_s2p_tree_local.png,
3657         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
3658         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
3659         multimap_text_insert_timing_test_large_s2p_hash_local.png,
3660         hash_zlob_random_int_find_timing_test_local.png,
3661         multimap_text_insert_timing_test_large_s2p_tree_local.png,
3662         binary_priority_queue_random_int_push_timing_test_local.png,
3663         priority_queue_text_pop_mem_usage_test_local.png,
3664         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
3665         tree_split_join_timing_test_local.png,
3666         multimap_text_find_timing_test_small_s2p_hash_local.png,
3667         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
3668         priority_queue_random_int_push_pop_timing_test_local.png,
3669         multimap_text_find_timing_test_small_s2p_tree_local.png,
3670         gp_hash_random_int_subscript_timing_test_insert_local.png,
3671         priority_queue_text_push_timing_test_local.png,
3672         cc_hash_random_int_subscript_timing_test_find_local.png,
3673         tree_text_insert_timing_test_vector_tree_local.png,
3674         multimap_text_find_timing_test_large_s2p_hash_local.png,
3675         pairing_priority_queue_text_push_timing_test_local.png,
3676         tree_order_statistics_timing_test_local.png,
3677         priority_queue_text_push_pop_timing_test_local.png,
3678         text_find_timing_test_tree_like_local.png,
3679         multimap_text_find_timing_test_large_s2p_tree_local.png,
3680         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
3681         cc_hash_random_int_subscript_timing_test_insert_local.png,
3682         priority_queue_text_modify_up_timing_test_local.png,
3683         random_int_find_find_timing_test_tree_local.png,
3684         priority_queue_random_int_push_timing_test_local.png,
3685         tree_text_insert_timing_test_node_tree_local.png,
3686         pairing_priority_queue_text_push_pop_timing_test_local.png,
3687         gp_hash_random_int_find_timing_test_local.png,
3688         cc_hash_random_int_find_timing_test_local.png,
3689         priority_queue_text_join_timing_test_local.png: Update local pngs.
3690
3691
3692         Testsuite changes.
3693         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
3694         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
3695         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
3696         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
3697         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
3698         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
3699         New.
3700         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
3701         New.
3702         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
3703         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
3704
3705         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
3706
3707         * testsuite/ext/pb_ds/example/basic_set.cc: Update.
3708         * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
3709         * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
3710         * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
3711         * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
3712         * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
3713         * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
3714         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
3715           Same.
3716         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
3717         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
3718         * testsuite/data/make_graph_test_infos.xml: Same.
3719         * testsuite/util/regression/common_type.hpp: Same.
3720         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
3721         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
3722         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
3723         * testsuite/util/regression/rand/priority_queue/
3724           rand_regression_test.hpp: Same.
3725         * testsuite/util/regression/rand/priority_queue/
3726           container_rand_regression_test.tcc: Same.
3727         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
3728         * testsuite/util/regression/rand/assoc/container_rand_regression_test.h
3729         * testsuite/util/regression/rand/assoc/
3730           container_rand_regression_test.tcc: Same.
3731         * testsuite/util/native_type/native_priority_queue.hpp: Same.
3732         * testsuite/util/native_type/native_multimap.hpp: Same.
3733         * testsuite/util/native_type/native_hash_multimap.hpp: Same.
3734         * testsuite/util/native_type/native_set.hpp: Same.
3735         * testsuite/util/native_type/native_map.hpp: Same.
3736         * testsuite/util/native_type/native_hash_set.hpp: Same.
3737         * testsuite/util/native_type/native_hash_map.hpp: Same.
3738         * testsuite/util/testsuite_containers.h
3739         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
3740         * testsuite/util/common_type/assoc/common_type.hpp: Same.
3741         * testsuite/util/common_type/assoc/string_form.hpp: Same.
3742         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
3743         * testsuite/util/common_type/assoc/detail/
3744           trigger_policy_string_form.hpp: Same.
3745         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
3746         * testsuite/util/common_type/assoc/detail/
3747           size_policy_string_form.hpp: Same.
3748         * testsuite/util/common_type/assoc/detail/
3749           probe_fn_string_form.hpp: Same.
3750         * testsuite/util/common_type/assoc/detail/
3751           tree_supports_order_statistics.hpp: Same.
3752         * testsuite/util/common_type/assoc/detail/
3753           trie_supports_prefix_search.hpp: Same.
3754         * testsuite/util/common_type/assoc/detail/
3755           list_update_policy_string_form.hpp: Same.
3756         * testsuite/util/common_type/assoc/detail/
3757           trie_supports_order_statistics.hpp: Same.
3758         * testsuite/util/common_type/assoc/native_set.hpp: Same.
3759         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
3760         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
3761         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
3762