OSDN Git Service

Remove accidentally committed duplicate ChangeLog entry.
[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
3763 2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
3764
3765         * include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
3766         (istreambuf_iterator<>::istreambuf_iterator(const
3767         istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
3768         in C++0x mode.
3769
3770 2011-05-23  Jason Merrill  <jason@redhat.com>
3771
3772         * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
3773
3774 2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
3775
3776         * testsuite/20_util/bind/cv_quals_2.cc: New.
3777
3778 2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
3779
3780         PR libstdc++/49058
3781         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
3782         operator()(_Args&&...)): Don't cv qualify _Functor directly
3783         in the default template argument, SFINAE doesn't apply when
3784         the functor has no arguments.
3785         * testsuite/20_util/bind/49058_1.cc: New.
3786         * testsuite/20_util/bind/49058_2.cc: Likewise.
3787
3788 2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
3789
3790         * include/bits/unique_ptr.h: Use noexcept per the FDIS.
3791
3792 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3793
3794         * testsuite/21_strings/basic_string/requirements/exception/
3795         propagation_consistent.cc: Fix vs POD-ness of value_type.
3796         * testsuite/21_strings/basic_string/requirements/exception/
3797         basic.cc: Likewise.
3798         * testsuite/ext/vstring/requirements/exception/
3799         propagation_consistent.cc: Likewise.
3800         * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
3801
3802 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3803
3804         * include/bits/char_traits.h: Use noexcept throughout.
3805         * include/std/typeindex: Likewise.
3806
3807         * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
3808         noexcept; adjust callers.
3809         * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
3810         * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
3811         * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
3812         * testsuite/20_util/pair/noexcept_swap.cc: Likewise.
3813         * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
3814         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3815         line numbers.
3816
3817 2011-05-20  Jason Merrill  <jason@redhat.com>
3818
3819         * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
3820         functions from dependent bases.
3821         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
3822         * include/ext/pb_ds/detail/rb_tree_map_/
3823         split_join_fn_imps.hpp: Likewise.
3824         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
3825         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
3826         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
3827         * include/ext/pb_ds/detail/splay_tree_/
3828         split_join_fn_imps.hpp: Likewise.
3829         * include/ext/pb_ds/detail/tree_policy/
3830         order_statistics_imp.hpp: Likewise.
3831         * include/ext/pb_ds/detail/trie_policy/
3832         prefix_search_node_update_imp.hpp: Likewise.
3833         * include/ext/rc_string_base.h: Likewise.
3834         * include/ext/rope: Likewise.
3835         * include/ext/ropeimpl.h: Likewise.
3836         * testsuite/util/exception/safety.h: Likewise.
3837         * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
3838         * testsuite/util/testsuite_io.h: Likewise.
3839         * include/std/functional: Declare mem_fn earlier.
3840         * include/tr1/functional: Likewise.
3841         * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.
3842
3843 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3844
3845         * include/std/tuple (tuple_element<__i, const _Tp>,
3846         tuple_element<__i, volatile _Tp>, tuple_element<__i,
3847         const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
3848         tuple_size<const volatile _Tp>): Add.
3849         * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
3850         * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
3851         * testsuite/20_util/tuple/cv_tuple_size.cc: New.
3852         * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
3853         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
3854         line number.
3855
3856 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3857
3858         * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
3859         noexcept.
3860         (__get_helper): Likewise.
3861         (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
3862         * include/bits/move.h (swap): Likewise.
3863         * include/bits/algorithmfwd.h (swap): Adjust.
3864         * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
3865         * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
3866         mode, prefer delete to access control to make the type not copy
3867         assignable.
3868         * testsuite/util/testsuite_tr1.h: Add test classes.
3869         * testsuite/20_util/tuple/noexcept_swap.cc: New.
3870         * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
3871         * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
3872         delete to access control.
3873         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
3874         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3875         line numbers.
3876
3877 2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
3878
3879         * testsuite/util/testsuite_tr1.h: Add test classes.
3880         * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
3881
3882 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3883
3884         * include/std/type_traits (is_assignable, is_copy_assignable,
3885         is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
3886         is_nothrow_move_assignable): Add; minor tweaks elsewhere.
3887         (has_nothrow_copy_assign): Remove.
3888         * testsuite/util/testsuite_tr1.h: Add test classes.
3889         * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
3890         * testsuite/20_util/is_assignable/requirements/
3891         explicit_instantiation.cc: Likewise.
3892         * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
3893         * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
3894         Likewise.
3895         * testsuite/20_util/is_nothrow_assignable/requirements/
3896         explicit_instantiation.cc: Likewise.
3897         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
3898         * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
3899         Likewise.
3900         * testsuite/20_util/is_move_assignable/requirements/
3901         explicit_instantiation.cc: Likewise.
3902         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
3903         * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
3904         Likewise.
3905         * testsuite/20_util/is_copy_assignable/requirements/
3906         explicit_instantiation.cc: Likewise.
3907         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
3908         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3909         typedefs.cc: Likewise.
3910         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3911         explicit_instantiation.cc: Likewise.
3912         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
3913         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3914         typedefs.cc: Likewise.
3915         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3916         explicit_instantiation.cc: Likewise.
3917         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3918         dg-error line numbers.
3919         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3920         Likewise.
3921         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3922
3923 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3924
3925         * include/bits/shared_ptr_base.h: Use noexcept. Define special member
3926         functions as defaulted/deleted.
3927         * include/bits/shared_ptr.h: Use noexcept.
3928         * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
3929         * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3930
3931 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3932
3933         * doc/xml/manual/bitmap_allocator.xml: Fix typos.
3934
3935 2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
3936
3937         * libsupc++/initializer_list: Use noexcept specifier.
3938         (initializer_list<>::size, begin, end): Qualify as const.
3939         * include/bits/move.h (__addressof, forward, move, addressof): Specify
3940         as noexcept.
3941         * include/std/bitset: Use noexcept specifier throughout.
3942         * include/debug/bitset: Update.
3943         * include/profile/bitset: Likewise.
3944
3945 2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
3946
3947         * include/std/tuple: Use noexcept where appropriate.
3948         (tuple<>::swap): Rework implementation.
3949         (_Head_base<>::_M_swap_impl): Remove.
3950         (get(std::tuple<>&&)): Add.
3951         * testsuite/20_util/tuple/element_access/get2.cc: New.
3952         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
3953         line number.
3954
3955 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3956
3957         * include/std/utility: Simplify the last commit, the whole
3958         std::get code is C++0x only.
3959
3960 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3961
3962         * include/std/utility (get(std::pair<>&&)): Add.
3963         * include/bits/stl_pair.h (pair::swap(pair&),
3964         swap(pair<>&, pair<>&)): Use noexcept.
3965         * include/bits/random.h (discard_block_engine<>::base,
3966         independent_bits_engine<>::base, shuffle_order_engine<>::base,
3967         random_device::entropy): Use noexcept.
3968         * include/std/array: Use noexcept where appropriate.
3969         (get(array<>&&)): Add.
3970         * testsuite/23_containers/array/requirements/get.cc: New.
3971         * testsuite/20_util/pair/get.cc: Likewise.
3972         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
3973         line number.
3974
3975 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
3976
3977         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
3978         Add.
3979         * include/std/limits: Use the latter everywhere.
3980         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
3981         macro usages, the specializations exist only in C++0x mode.
3982         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
3983         line number.
3984
3985 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
3986
3987         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
3988         dg-require-cmath.
3989         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3990
3991 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
3992
3993         * include/ext/pb_ds/detail/resize_policy/
3994         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
3995         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
3996         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3997         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3998         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
3999         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
4000         * include/ext/pb_ds/detail/debug_map_base.hpp,
4001         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
4002         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
4003         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
4004         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
4005         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
4006         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
4007         macro definitions move...
4008         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
4009         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
4010         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
4011         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
4012         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
4013         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
4014         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
4015         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
4016         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
4017         ...here.
4018
4019 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
4020
4021         PR libstdc++/48933
4022         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
4023         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
4024         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
4025         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
4026         scalbn, tgamma, trunc): Use __enable_if on the return type.
4027         * include/tr1/cmath: Likewise.
4028         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
4029         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
4030
4031 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
4032
4033         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
4034         (_GLICXX_DEBUG_VERIFY): Use latter.
4035         * include/ext/pb_ds/detail/resize_policy/
4036         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
4037         containing the original assert call.
4038         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
4039         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
4040         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4041         split_join_fn_imps.hpp: Likewise.
4042         * include/ext/pb_ds/detail/cc_hash_table_map_/
4043         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
4044         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
4045         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
4046         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
4047         erase_no_store_hash_fn_imps.hpp: Likewise.
4048         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
4049         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
4050         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
4051         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
4052         Likewise.
4053         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
4054         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
4055         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
4056         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
4057         Likewise.
4058         * include/ext/pb_ds/detail/gp_hash_table_map_/
4059         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
4060         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
4061         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
4062         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
4063         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
4064         Likewise.
4065         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
4066         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4067         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
4068         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
4069         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
4070         find_fn_imps.hpp, insert_fn_imps.hpp,
4071         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4072         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
4073         * include/ext/pb_ds/detail/binomial_heap_/
4074         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4075         binomial_heap_.hpp: Likewise.
4076         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4077         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
4078         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
4079         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
4080         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
4081         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4082         split_join_fn_imps.hpp: Likewise.
4083         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
4084         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
4085         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
4086         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
4087         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
4088         find_fn_imps.hpp, insert_fn_imps.hpp,
4089         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
4090         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
4091         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
4092         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
4093         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
4094         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
4095         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
4096         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
4097         split_join_fn_imps.hpp: Likewise.
4098         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
4099         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
4100         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
4101         * include/ext/pb_ds/hash_policy.hpp: Likewise.
4102
4103 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
4104
4105         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
4106
4107 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
4108
4109         PR libstdc++/47913 (again)
4110         * include/std/ratio (ratio_add, ratio_less): Rewrite.
4111         * testsuite/20_util/ratio/operations/47913.cc: Extend.
4112         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
4113         line numbers.
4114         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
4115
4116 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
4117
4118         PR libstdc++/48848
4119         * include/std/valarray (valarray<>::valarray(valarray&&),
4120         valarray<>::operator=(valarray&&), valarray<>::swap): Add.
4121         * doc/xml/manual/status_cxx200x.xml: Update.
4122         * testsuite/26_numerics/valarray/moveable.cc: New.
4123         * testsuite/26_numerics/valarray/swap.cc: Likewise.
4124
4125 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
4126
4127         PR libstdc++/48750
4128         * include/parallel/multiway_merge.h: Run _ValueType destructors.
4129         * include/parallel/multiway_mergesort.h: Likewise.
4130         * include/parallel/quicksort.h: Likewise.
4131         * include/parallel/random_shuffle.h: Likewise.
4132         * include/parallel/partial_sum.h: Likewise.
4133         * include/parallel/losertree.h: Run destructors; minor tweaks.
4134         * include/parallel/par_loop.h: Run destructors, fix memory
4135         allocations and deallocations.
4136         * testsuite/26_numerics/accumulate/48750.cc: New.
4137
4138         * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
4139         parallel-mode to avoid spurious multiple errors.
4140
4141 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
4142
4143         * include/std/functional (bind): Remove from overload set when first
4144         argument type might be a socket file descriptor.
4145         * testsuite/20_util/bind/socket.cc: New.
4146
4147 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
4148
4149         PR libstdc++/48848
4150         * doc/xml/manual/status_cxx200x.xml: Update valarray status.
4151         * doc/html/*: Regenerate.
4152
4153 2011-05-02  Ollie Wild  <aaw@google.com>
4154
4155         * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
4156         Fix unqualified lookup.
4157         (__sso_string_base<>::_M_assign): Likewise.
4158         (__sso_string_base<>::_M_reserve): Likewise.
4159         (__sso_string_base<>::_M_mutate): Likewise.
4160         (__sso_string_base<>::_M_erase): Likewise.
4161         * include/ext/vstring.h (__versa_string<>::replace): Likewise.
4162         (__versa_string<>::compare): Likewise.
4163         * include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
4164
4165 2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
4166
4167         * doc/xml/manual/status_cxx200x.xml: Update to reflect current status
4168         and FDIS content.
4169         * doc/xml/manual/documentation_hacking.xml: Fix typo.
4170         * doc/html/*: Regenerate.
4171
4172 2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>
4173
4174         * include/std/type_traits (__is_default_constructible_atom,
4175         __is_default_constructible_safe<, true>,
4176         __is_direct_constructible_new_safe,
4177         __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
4178         __is_direct_constructible_ref_cast, __is_direct_constructible,
4179         __is_nary_constructible): Simplify; add comments throughout.
4180
4181 2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
4182
4183         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
4184         Adjust dg-error line numbers.
4185         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4186         Likewise.
4187         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4188
4189 2011-04-30  Doug Kwan  <dougkwan@google.com>
4190
4191         * include/Makefile.am (install-freestanding-headers): Also install
4192         cxxabi_tweaks.h.
4193         * include/Makefile.in: Regenerate.
4194
4195 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
4196
4197         PR libstdc++/48760
4198         * include/std/complex (complex<float>::complex(float, float),
4199         complex<double>::complex(double, double),
4200         complex<long double>::complex(long double, long double)): Use
4201         list-initialization in C++0x mode, initialize in the body in
4202         C++03 mode.
4203         * testsuite/26_numerics/complex/cons/48760.cc: New.
4204         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
4205
4206 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
4207
4208         * include/std/bitset (_Base_bitset(unsigned long long)): Minor
4209         tweak, remove redundant round braces.
4210
4211 2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
4212
4213         * include/bits/move.h (move_if_noexcept): Add.
4214         * testsuite/20_util/move_if_noexcept/requirements/
4215         explicit_instantiation.cc: New.
4216         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
4217
4218 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
4219
4220         * include/std/type_traits (struct underlying_type): Add.
4221         * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
4222         * testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
4223         Likewise.
4224         * testsuite/20_util/underlying_type/requirements/
4225         explicit_instantiation.cc: Likewise.
4226         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
4227         line number.
4228
4229 2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
4230
4231         * include/parallel/multiway_merge.h: Uglify equally_split
4232         and equally_split_point throughout.
4233         * include/parallel/par_loop.h: Likewise.
4234         * include/parallel/equally_split.h: Likewise.
4235         * include/parallel/set_operations.h: Likewise.
4236         * include/parallel/unique_copy.h: Likewise.
4237         * include/parallel/multiway_mergesort.h: Likewise.
4238         * include/parallel/search.h: Likewise.
4239         * include/parallel/partial_sum.h: Likewise.
4240         * include/parallel/find.h: Likewise.
4241
4242 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
4243
4244         * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
4245         documentation.  Expand link text.
4246
4247 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
4248
4249         * libsupc++/cxxabi.h: Adjust link to FAQ entry.
4250
4251 2011-04-22  François Dumont  <francois.cppdevs@free.fr>
4252
4253         * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
4254         unused compilation result thanks to /dev/null.
4255         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode,
4256         check_v3_target_profile_mode, check_v3_target_normal_mode,
4257         check_v3_target_cstdint, check_v3_target_cmath,
4258         check_v3_target_atomic_builtins, check_v3_target_gthreads,
4259         check_v3_target_nanosleep, check_v3_target_sched_yield,
4260         check_v3_target_string_conversions, check_v3_target_swprintf,
4261         check_v3_target_binary_io): Use simple preprocessing rather than
4262         compilation. Discard unused preprocessing result thanks to /dev/null.
4263
4264 2011-04-20  Jim Meyering  <meyering@redhat.com>
4265
4266         * libsupc++/del_opnt.cc (operator delete): Remove useless
4267         if-before-free.
4268
4269 2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
4270
4271         PR libstdc++/48521
4272         * include/std/type_traits (result_of): Handle pointer to member.
4273         * include/std/functional (__invoke): Likewise.
4274         (_Function_to_function_pointer): Remove.
4275         (_Reference_wrapper_base): Provide nested types independent of
4276         unary_function and binary_function.
4277         (reference_wrapper::operator()): DR 2017.
4278         (ref(const A&&), cref(const A&&): Define as deleted.
4279         * include/std/future (async): Simplify SFINAE and use result_of to
4280         support pointer to member.
4281         * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
4282         member.
4283         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
4284         * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
4285         instead of derivation from unary_function and binary_function.
4286         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
4287         * testsuite/20_util/reference_wrapper/invoke-2.cc: New.
4288         * testsuite/20_util/reference_wrapper/ref_neg.c: New.
4289         * testsuite/20_util/reference_wrapper/typedefs-3.c: New.
4290
4291 2011-04-19  Hans-Peter Nilsson  <hp@axis.com>
4292
4293         PR testsuite/48675
4294         * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
4295         this part if SAMPLES < 100000.
4296
4297 2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
4298
4299         * include/std/type_traits (is_nothrow_default_constructible,
4300         is_nothrow_copy_constructible, is_nothrow_move_constructible,
4301         is_copy_constructible, is_move_constructible): Add.
4302         (has_nothrow_default_constructor, has_nothrow_copy_constructor):
4303         Remove.
4304         (is_nothrow_constructible): Adjust.
4305
4306         * testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
4307         ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
4308         ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
4309         NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.
4310
4311         * testsuite/20_util/has_nothrow_default_constructor: Remove.
4312         * testsuite/20_util/has_nothrow_copy_constructor: Likewise.
4313
4314         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
4315         * testsuite/20_util/is_nothrow_move_constructible/requirements/
4316         typedefs.cc: Likewise.
4317         * testsuite/20_util/is_nothrow_move_constructible/requirements/
4318         explicit_instantiation.cc: Likewise.
4319         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
4320         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
4321         typedefs.cc: Likewise.
4322         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
4323         explicit_instantiation.cc: Likewise.
4324         * testsuite/20_util/is_nothrow_default_constructible/value.cc:
4325         Likewise.
4326         * testsuite/20_util/is_nothrow_default_constructible/requirements/
4327         typedefs.cc: Likewise.
4328         * testsuite/20_util/is_nothrow_default_constructible/requirements/
4329         explicit_instantiation.cc: Likewise.
4330         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
4331         * testsuite/20_util/is_move_constructible/requirements/typedefs.cc:
4332         Likewise.
4333         * testsuite/20_util/is_move_constructible/requirements/
4334         explicit_instantiation.cc: Likewise.
4335         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
4336         * testsuite/20_util/is_copy_constructible/requirements/typedefs.cc:
4337         Likewise.
4338         * testsuite/20_util/is_copy_constructible/requirements/
4339         explicit_instantiation.cc: Likewise.
4340
4341         * testsuite/20_util/is_default_constructible/value.cc: Add tests.
4342         * testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.
4343
4344         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
4345         Adjust dg-error line numbers.
4346         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4347         Likewise.
4348         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4349
4350 2011-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
4351
4352         * testsuite/25_algorithms/partition/moveable.cc: Actually run
4353         it in parallel-mode for check-parallel.
4354
4355 2011-04-17  Daniel Krugler  <daniel.kruegler@googlemail.com>
4356             Paolo Carlini  <paolo.carlini@oracle.com>
4357
4358         PR libstdc++/48635 (again)
4359         * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&),
4360         unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&),
4361         unique_ptr<>::operator=(unique_ptr<>&&),
4362         unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not
4363         forward<_Dp>, to forward the deleter.
4364         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: New.
4365
4366 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
4367             Paolo Carlini  <paolo.carlini@oracle.com>
4368
4369         PR libstdc++/48631
4370         * include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted
4371         function call operator.
4372         * testsuite/20_util/default_delete/48631_neg.cc: New.
4373         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
4374         line numbers.
4375
4376 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
4377             Paolo Carlini  <paolo.carlini@oracle.com>
4378
4379         PR libstdc++/48635
4380         * include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&),
4381         unique_ptr<>::operator=(unique_ptr<>&&),
4382         unique_ptr<_Tp[],>::operator=(unique_ptr&&),
4383         unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter
4384         instead of moving it.
4385         * testsuite/20_util/unique_ptr/assign/48635.cc: New.
4386
4387 2011-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4388
4389         * scripts/extract_symvers.pl: Handle NOTY.
4390
4391 2011-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
4392
4393         * include/std/istream: Fix comments in the light of DR60 + N3168.
4394
4395 2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
4396             Paolo Carlini  <paolo.carlini@oracle.com>
4397
4398         PR libstdc++/48526
4399         * include/std/type_traits (struct is_constructible): Re-implement,
4400         according to n3290.
4401         (struct is_default_constructible): Add.
4402         (struct is_destructible): Likewise.
4403         (struct __and_, __or_, __not_): Add and use throughout; reorder some
4404         facilities, other minor tweaks.
4405         * testsuite/util/testsuite_tr1.h: Add test types.
4406         * testsuite/20_util/is_constructible/value-2.cc: New.
4407         * testsuite/20_util/is_default_constructible/value.cc: Likewise.
4408         * testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
4409         Likewise.
4410         * testsuite/20_util/is_default_constructible/requirements/
4411         explicit_instantiation.cc: Likewise.
4412         * testsuite/20_util/is_destructible/value.cc: Likewise.
4413         * testsuite/20_util/is_destructible/requirements/typedefs.cc:
4414         Likewise.
4415         * testsuite/20_util/is_destructible/requirements/
4416         explicit_instantiation.cc: Likewise.
4417         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
4418         dg-error line numbers.
4419         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4420         Likewise.
4421         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4422         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
4423
4424 2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
4425
4426         * testsuite/20_util/is_function/value.cc: Add, adapted from the tr
4427         testsuite.
4428         * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
4429         * testsuite/20_util/is_function/requirements/
4430         explicit_instantiation.cc: Likewise.
4431         * testsuite/20_util/is_function/24808.cc: Likewise.
4432         * testsuite/20_util/is_function/35637.cc: Likewise.
4433         * testsuite/20_util/is_object/value.cc: Likewise.
4434         * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
4435         * testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
4436         : Likewise.
4437         * testsuite/20_util/is_object/24808.cc: Likewise.
4438         * testsuite/20_util/is_compound/value.cc: Likewise.
4439         * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
4440         * testsuite/20_util/is_compound/requirements/
4441         explicit_instantiation.cc: Likewise.
4442         * testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
4443         * testsuite/20_util/is_member_object_pointer/requirements/
4444         typedefs.cc: Likewise.
4445         * testsuite/20_util/is_member_object_pointer/requirements/
4446         explicit_instantiation.cc: Likewise.
4447         * testsuite/20_util/is_fundamental/value.cc: Likewise.
4448         * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
4449         * testsuite/20_util/is_fundamental/requirements/
4450         explicit_instantiation.cc: Likewise.
4451         * testsuite/20_util/is_member_pointer/value.cc: Likewise.
4452         * testsuite/20_util/is_member_pointer/requirements/typedefs.cc:
4453         Likewise.
4454         * testsuite/20_util/is_member_pointer/requirements/
4455         explicit_instantiation.cc: Likewise.
4456         * testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
4457         * testsuite/20_util/is_member_function_pointer/
4458         requirements/typedefs.cc: Likewise.
4459         * testsuite/20_util/is_member_function_pointer/requirements/
4460         explicit_instantiation.cc: Likewise.
4461
4462         * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
4463         Copyright years.
4464
4465 2011-04-12  Takaya Saito  <gintensubaru@gmail.com>
4466
4467         PR libstdc++/48476
4468         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
4469         _Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
4470         (_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
4471         * testsuite/20_util/tuple/cons/48476.cc: New.
4472         * testsuite/20_util/tuple/48476.cc: Likewise.
4473         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
4474
4475 2011-04-12  Allan McRae  <allan@archlinux.org>
4476
4477         PR libstdc++/48566
4478         * testsuite/tr1/6_containers/unordered_map/requirements/
4479         iterator_null_neg.cc: Include <cstddef>.
4480         * testsuite/tr1/6_containers/unordered_set/requirements/
4481         iterator_null_neg.cc: Likewise.
4482         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
4483         <cstring>.
4484         * testsuite/util/testsuite_common_types.h: Include <limits>.
4485         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
4486         Adjust dg-error line numbers.
4487         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
4488         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
4489         Likewise.
4490         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
4491         Likewise.
4492         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
4493         Likewise.
4494         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
4495         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
4496
4497 2011-04-11  Jason Merrill  <jason@redhat.com>
4498
4499         * testsuite/20_util/is_convertible/value.cc: Adjust.
4500
4501 2011-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
4502
4503         * testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
4504         it in parallel-mode for check-parallel.
4505         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
4506         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
4507         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
4508         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
4509         Likewise.
4510         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
4511         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
4512         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
4513
4514         * testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
4515         the tests based on std::lexicographical_compare for check-parallel.
4516         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
4517
4518 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4519
4520         PR libstdc++/48541
4521         * include/std/functional (_Base_manager::_M_get_pointer): Use
4522         addressof.
4523         * testsuite/20_util/function/48541.cc: New.
4524
4525 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4526
4527         PR libstdc++/48465
4528         * configure.ac (libtool_VERSION): Bump library version to 6:16:0.
4529         * configure: Regenerate.
4530         * config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols.
4531         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
4532
4533 2011-04-06  Jeffrey Yasskin  <jyasskin@google.com>
4534
4535         * include/ext/algorithm (is_sorted): In C++0x mode import from
4536         namespace std.
4537         * include/ext/numeric (iota): In C++0x mode import from
4538         namespace std.
4539         * testsuite/ext/is_sorted/cxx0x.cc: New.
4540         * testsuite/ext/iota/cxx0x.cc: New.
4541
4542 2011-04-02  Jonathan Wakely  <redi@gcc.gnu.org>
4543
4544         PR libstdc++/48398
4545         * include/bits/unique_ptr.h (__tuple_type): Store pointer type.
4546         * testsuite/20_util/unique_ptr/modifiers/48398.cc: New.
4547         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove
4548         unused parameter name.
4549
4550 2011-03-31  Jeffrey Yasskin  <jyasskin@google.com>
4551
4552         * libsupc++/exception_ptr.h: Forward-declare std::type_info.
4553         * libsupc++/nested_exception.h (__throw_with_nested): Remove a
4554         redundant default argument from std::__throw_with_nested.
4555
4556 2011-03-31  Paolo Carlini  <paolo.carlini@oracle.com>
4557
4558         PR libstdc++/48382
4559         * src/ctype.cc: Do not include <bits/ctype_noninline.h>.
4560         * src/Makefile.am: Add ctype_configure_char.cc to host_sources.
4561         * src/Makefile.in: Regenerate.
4562         * include/Makefile.am: Remove ctype_noninline.h from host_headers.
4563         * include/Makefile.in: Regenerate.
4564         * doc/xml/manual/internals.xml: Update.
4565         * config/os/newlib/ctype_noninline.h: Fixup and rename to...
4566         * config/os/newlib/ctype_configure_char.cc: ... this.
4567         * config/os/aix/ctype_noninline.h: Likewise.
4568         * config/os/aix/ctype_configure_char.cc: Likewise.
4569         * config/os/vxworks/ctype_noninline.h: Likewise.
4570         * config/os/vxworks/ctype_configure_char.cc
4571         * config/os/hpux/ctype_noninline.h: Likewise.
4572         * config/os/hpux/ctype_configure_char.cc: Likewise.
4573         * config/os/gnu-linux/ctype_noninline.h: Likewise.
4574         * config/os/gnu-linux/ctype_configure_char.cc: Likewise.
4575         * config/os/mingw32/ctype_noninline.h: Likewise.
4576         * config/os/mingw32/ctype_configure_char.cc: Likewise.
4577         * config/os/tpf/ctype_noninline.h: Likewise.
4578         * config/os/tpf/ctype_configure_char.cc: Likewise.
4579         * config/os/uclibc/ctype_noninline.h: Likewise.
4580         * config/os/uclibc/ctype_configure_char.cc: Likewise.
4581         * config/os/bionic/ctype_noninline.h: Likewise.
4582         * config/os/bionic/ctype_configure_char.cc: Likewise.
4583         * config/os/djgpp/ctype_noninline.h: Likewise.
4584         * config/os/djgpp/ctype_configure_char.cc: Likewise.
4585         * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
4586         * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
4587         * config/os/bsd/netbsd/ctype_noninline.h: Likewise.
4588         * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
4589         * config/os/bsd/darwin/ctype_noninline.h: Likewise.
4590         * config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
4591         * config/os/bsd/freebsd/ctype_noninline.h: Likewise.
4592         * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
4593         * config/os/irix/irix6.5/ctype_noninline.h: Likewise.
4594         * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
4595         * config/os/generic/ctype_noninline.h: Likewise.
4596         * config/os/generic/ctype_configure_char.cc: Likewise.
4597         * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
4598         * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.
4599
4600 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4601
4602         * include/std/future (future::share): Add.
4603         (packaged_task::result_type): Remove as per LWG 2030.
4604         (packaged_task::packaged_task): Remove redundant constructors, as per
4605         LWG 1514.
4606         * testsuite/30_threads/future/members/share.cc: New.
4607         * testsuite/30_threads/packaged_task/requirements/typedefs.cc: Remove.
4608
4609 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4610
4611         * testsuite/28_regex/match_results/ctors/char/default.cc: Do not call
4612         members which require a fully established result state.
4613         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
4614
4615 2011-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
4616
4617         * include/bits/random.h (negative_binomial_distribution<>::
4618         negative_binomial_distribution(_IntType, double),
4619         negative_binomial_distribution<>::
4620         negative_binomial_distribution(const param_type&)): Tweak
4621         construction of _M_gd.
4622         * include/bits/random.tcc (negative_binomial_distribution<>::
4623         operator()): Adjust.
4624
4625 2011-03-24  Paolo Carlini  <paolo.carlini@oracle.com>
4626
4627         * include/bits/random.h (negative_binomial_distribution<>::
4628         negative_binomial_distribution(_IntType, double),
4629         negative_binomial_distribution<>::
4630         negative_binomial_distribution(const param_type&)): Fix
4631         construction of _M_gd.
4632         * include/bits/random.tcc (negative_binomial_distribution<>::
4633         operator()): Fix computation, per Leger's algorithm.
4634         * testsuite/util/testsuite_random.h (discrete_pdf,
4635         negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New.
4636         (binomial_pdf): Swap last two parameters.
4637         * testsuite/26_numerics/random/discrete_distribution/
4638         operators/values.cc: New.
4639         * testsuite/26_numerics/random/negative_binomial_distribution/
4640         operators/values.cc: Likewise.
4641         * testsuite/26_numerics/random/poisson_distribution/
4642         operators/values.cc: Likewise.
4643         * testsuite/26_numerics/random/uniform_int_distribution/
4644         operators/values.cc: Likewise.
4645         * testsuite/26_numerics/random/binomial_distribution/
4646         operators/values.cc: Adjust.
4647
4648 2011-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4649
4650         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
4651         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4652         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
4653         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4654         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4655
4656 2011-03-23  Matthias Klose  <doko@ubuntu.com>
4657
4658         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Regenerated.
4659
4660 2011-03-23  Uros Bizjak  <ubizjak@gmail.com>
4661
4662         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
4663
4664 2011-03-22  Joseph Myers  <joseph@codesourcery.com>
4665
4666         * configure.ac: Don't handle powerpc*-*-gnu*.
4667         * configure: Regenerate.
4668
4669 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4670
4671         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Tweak
4672         Copyright years.
4673         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
4674         Likewise.
4675
4676 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4677
4678         * include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add,
4679         per DR 1401.
4680         (operator==, operator!=, operator<): Fix per the letter of DR 1401.
4681         * include/bits/shared_ptr_base.h: Likewise for __shared_ptr.
4682         * include/bits/unique_ptr.h (operator==, operator!=, operator<,
4683         operator<=, operator>, operator>=): Fix per the letter of DR 1401.
4684         * testsuite/20_util/shared_ptr/comparison/dr1401.cc: New.
4685         * testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
4686         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
4687
4688 2011-03-22  Jakub Jelinek  <jakub@redhat.com>
4689
4690         * config/abi/pre/gnu.ver (GLIBCXX_3.4.15): Export _ZNSsC2EOSs
4691         and _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_.
4692         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerated.
4693         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4694         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4695         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4696         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4697         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4698         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4699         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4700         Likewise.
4701         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
4702         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4703         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4704         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4705         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
4706         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4707         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: New test.
4708         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: New
4709         test.
4710
4711 2011-03-21  Jack Howarth  <howarth@bromo.med.uc.edu>
4712
4713         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune "could not
4714         create compact unwind for" warnings.
4715
4716 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
4717
4718         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
4719         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4720         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4721         Likewise.
4722         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4723         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4724         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4725         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4726         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4727         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4728         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4729         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4730         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4731
4732         * testsuite/util/testsuite_abi.cc (check_version): Set incompatible
4733         even when adding symbols to CXXABI_1.3, GLIBCXX_LDBL_3.4 and
4734         CXXABI_LDBL_1.3 versions.
4735
4736 2011-03-21  Benjamin Kosnik  <bkoz@redhat.com>
4737
4738         * config/abi/pre/gnu.ver: Remove typeinfo name exports for C++0x types.
4739
4740 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
4741
4742         * config/abi/pre/gnu.ver (CXXABI_1.3): Don't export _ZT[IS][PK]*[no].
4743         (CXXABI_1.3.5): Export _ZTI[PK]*[no].
4744
4745 2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4746
4747         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
4748         sparc*-sun-solaris2.10 && lp64.
4749
4750 2011-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4751
4752         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename
4753         to check_v3_target_cmath.
4754         * testsuite/lib/dg-options.exp (dg-require-c99_math): Rename
4755         to dg-require-cmath.
4756         * testsuite/26_numerics/random/binomial_distribution/
4757         operators/values.cc: Adjust.
4758
4759 2011-03-18  Diego Novillo  <dnovillo@google.com>
4760
4761         * testsuite/decimal/mixed-mode-arith_neg.cc: Rename from
4762         mixed-mode_neg.cc
4763         * testsuite/decimal/mixed-mode-cmp_neg.cc: Factor out of
4764         mixed-mode-arith_neg.cc
4765
4766 2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
4767
4768         * testsuite/util/testsuite_random.h: New.
4769         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Add.
4770         * testsuite/lib/dg-options.exp (dg-require-c99_math): Likewise.
4771         * testsuite/26_numerics/random/bernoulli_distribution/
4772         operators/values.cc: New.
4773         * testsuite/26_numerics/random/binomial_distribution/
4774         operators/values.cc: Likewise.
4775         * testsuite/26_numerics/random/geometric_distribution/
4776         operators/values.cc: Likewise.
4777
4778 2011-03-16  Benjamin Kosnik  <bkoz@redhat.com>
4779
4780         * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes.
4781         * testsuite/19_diagnostics/stdexcept.cc: New.
4782
4783 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
4784
4785         * include/std/thread: Revert.
4786         * src/thread.cc: Same.
4787         * config/abi/pre/gnu.ver: Same.
4788
4789 2011-03-15  Doug Kwan  <dougkwan@google.com>
4790
4791         PR libstdc++/48123
4792         * include/Makefile.am (install-freestanding-headers): Install
4793         cpu_defines.h
4794         * include/Makefile.in: Regenerate.
4795
4796 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
4797
4798         * config/abi/pre/gnu.ver: Make nested_exception exports super clear.
4799         Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15.
4800
4801 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4802
4803         PR libstdc++/48130
4804         * src/future.cc: Guard definitions.
4805         * libsupc++/nested_exception.cc: Same.
4806
4807 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4808
4809         * src/Makefile.am: Add functional.cc, shared_ptr.cc.
4810         * src/Makefile.in: Regenerate.
4811         * libsupc++/Makefile.am: Add nested_exception.cc.
4812         * libsupc++/Makefile.in: Regenerate.
4813         * src/system_error.cc: Add ctor and dtor definitions for error_category.
4814         * src/functional.cc: New. Add dtor definition for bad_function_call.
4815         * src/stdexcept.cc: Add dtor definitions for domain_error,
4816         invalid_argument, length_error, out_of_range, range_error,
4817         overflow_error, underflow_error.
4818         * src/future.cc: Add dtor definition for __future_base::_Result_base.
4819         * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr.
4820         * src/thread.cc: Add dtor for thread::_Impl_base.
4821         * include/std/system_error: Adjust.
4822         * include/std/stdexcept: Same.
4823         * include/std/future: Same.
4824         * include/std/functional: Same.
4825         * include/std/thread: Same.
4826         * include/bits/shared_ptr_base.h: Same.
4827         * libsupc++/nested_exception.cc: New. Add dtor for nested_exception.
4828         * libsupc++/nested_exception.h: Adjust.
4829         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
4830         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
4831         * config/abi/pre/gnu.ver: Add new exports.
4832
4833 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4834
4835         * include/bits/regex_compiler.h: Nest namespace versioning.
4836         * include/bits/regex_grep_matcher.tcc: Same.
4837         * include/bits/regex_grep_matcher.h: Same.
4838         * include/bits/regex_cursor.h: Same.
4839         * include/bits/regex_nfa.h: Same.
4840         * include/bits/regex_nfa.tcc: Same.
4841
4842         * include/bits/regex_grep_matcher.h: Version forward declarations.
4843         * include/bits/c++config: Add namespace association for __regex.
4844         * include/bits/regex.h: Make sub_match consistent.
4845
4846 2011-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4847
4848         * doc/xml/manual/abi.xml: Replace docs.sun.com URLs by their OTN
4849         equivalents.
4850         * doc/html/manual/abi.html: Regenerate.
4851
4852 2011-03-14  Tom Tromey  <tromey@redhat.com>
4853
4854         * python/libstdcxx/v6/printers.py (_use_gdb_pp): New global.
4855         Try to import `gdb.printing' module.
4856         (UniquePointerPrinter.__init__): Add 'typename' argument.
4857         (StdSlistPrinter.__init__): Likewise.
4858         (StdSlistIteratorPrinter.__init__): Likewise.
4859         (StdVectorIteratorPrinter.__init__): Likewise.
4860         (StdRbtreeIteratorPrinter.__init__): Likewise.
4861         (StdDebugIteratorPrinter.__init__): Likewise.
4862         (StdDequeIteratorPrinter.__init__): Likewise.
4863         (StdStringPrinter.__init__): Likewise.
4864         (RxPrinter, Printer): New class.
4865         (libstdcxx_printer): New global.
4866         (register_libstdcxx_printers): Rewrite.
4867         (build_libstdcxx_dictionary): Rewrite.
4868         (pretty_printers_dict): Remove.
4869
4870 2011-03-14  Andrey Zholos  <aaz@althenia.net>
4871
4872         PR libstdc++/48114
4873         * include/bits/random.h (geometric_distribution): Correct formula
4874         in comment, per C++0x.
4875         (geometric_distribution<>::param_type::param_type(double)): Fix check.
4876         (geometric_distribution<>::param_type::_M_initialize):
4877         Store log(1 - p).
4878         * include/bits/random.tcc (geometric_distribution<>::operator()):
4879         Fix computation.
4880         (binomial_distribution<>::operator()): Likewise.
4881
4882 2011-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
4883
4884         * testsuite/util/testsuite_rvalref.h: Minor tweaks.
4885
4886 2011-03-09  Jonathan Wakely  <redi@gcc.gnu.org>
4887             Chris Jefferson  <chris@bubblescope.net>
4888             Paolo Carlini  <paolo.carlini@oracle.com>
4889
4890         * testsuite/util/testsuite_rvalref.h (rvalstruct_compare_by_value):
4891         New.
4892         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
4893         Likewise.
4894         * testsuite/25_algorithms/partial_sort/check_compare_by_value:
4895         Likewise.
4896         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
4897         Likewise.
4898         * testsuite/25_algorithms/sort/check_compare_by_value: Likewise.
4899
4900 2011-03-09  Chris Jefferson  <chris@bubblescope.net>
4901
4902         PR libstdc++/48038
4903         * include/bits/stl_algo.h (__merge_backward): Rename to
4904         __move_merge_backward and change to always move rather than copy.
4905         (__move_merge): New function similar to std::merge except values
4906         are moved instead of copied.
4907         (__merge_adaptive, __merge_sort_loop): Change from using std::merge
4908         and __merge_backward to __move_merge and __move_merge_backward.
4909
4910 2011-03-07  Jason Merrill  <jason@redhat.com>
4911
4912         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
4913         expected errors.
4914
4915 2011-03-07  Benjamin Kosnik  <bkoz@redhat.com>
4916             Matthias Klose  <doko@ubuntu.com>
4917             Jonathan Wakely  <redi@gcc.gnu.org>
4918
4919         PR libstdc++/47145
4920         * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Define.
4921         * configure.ac: Use it.
4922         * doc/Makefile.am (XSL_STYLE_DIR): Set at configure time.
4923         * configure: Regenerate.
4924         * doc/Makefile.in: Regenerate.
4925
4926 2011-03-04  Benjamin Kosnik  <bkoz@chula>
4927
4928         * src/Makefile.am (inst_sources): Make source instantion files
4929         conditional.
4930         (XTEMPLATE_FLAGS): Make -fno-implicit-templates conditional.
4931         * src/Makefile.in: Regenerate.
4932         * src/valarray-inst.cc: Move to..
4933         * src/valarray.cc: ...this.
4934         * acinclude.m4 (GLIBCXX_ENABLE_EXTERN_TEMPLATE]): Define.
4935         * configure.ac (GLIBCXX_ENABLE_EXTERN_TEMPLATE): Use it.
4936         * configure: Regenerate.
4937         * include/Makefile.am (stamp-extern-template): Add.
4938         * include/Makefile.in: Regenerate.
4939
4940         * doc/xml/manual/configure.xml: Document --enable-extern-template.
4941
4942         * include/bits/locale_classes.tcc: Adjust comment.
4943         * include/bits/locale_facets.tcc: Same.
4944         * include/bits/basic_ios.tcc: Same.
4945         * include/bits/istream.tcc: Same.
4946         * include/bits/codecvt.h: Same.
4947         * include/bits/ostream.tcc: Same.
4948         * include/bits/sstream.tcc: Same.
4949         * include/bits/c++config: Same.
4950         * include/bits/basic_string.tcc: Same.
4951         * include/bits/ostream_insert.h: Same.
4952         * include/bits/locale_facets_nonio.tcc: Same.
4953         * include/bits/streambuf.tcc: Same.
4954         * include/bits/allocator.h: Same.
4955         * include/bits/fstream.tcc: Same.
4956
4957         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
4958
4959 2011-03-02  Benjamin Kosnik  <bkoz@redhat.com>
4960
4961         * testsuite/Makefile.am: Make clean fixups.
4962         * testsuite/Makefile.in: Regenerate.
4963
4964 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
4965
4966         * include/std/ratio (ratio_less): Add comments.
4967
4968 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
4969
4970         PR libstdc++/47913
4971         * include/std/ratio (ratio_add): Avoid denominator overflow.
4972         * testsuite/20_util/ratio/operations/47913.cc: New.
4973
4974 2011-02-28  Benjamin Kosnik  <bkoz@redhat.com>
4975
4976         * testsuite/20_util/hash/chi2_quality.cc: Use C++0x mode on simulators.
4977         * testsuite/20_util/hash/quality.cc: Same.
4978
4979 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
4980
4981         PR libstdc++/47921
4982         * include/std/streambuf (basic_streambuf<>::__safe_gbump,
4983         __safe_pbump): Add.
4984         * include/bits/streambuf.tcc (basic_streambuf<>::xgetn,
4985         xputn): Use the latter.
4986         * include/bits/streambuf_iterator.h: Likewise.
4987         * src/strstream.cc: Likewise.
4988         * src/streambuf.cc: Likewise.
4989         * src/compatibility.cc: Likewise.
4990         * src/istream.cc: Likewise.
4991         * include/bits/fstream.tcc (basic_filebuf<>::xsgetn): Use setg
4992         instead of gbump.
4993         * include/std/sstream (basic_stringbuf<>::_M_pbump): Add.
4994         * include/bits/sstream.tcc (basic_stringbuf<>::seekoff,
4995         seekpos, _M_sync): Use setg, setp, and _M_pbump.
4996         * config/abi/pre/gnu.ver: Tweak.
4997
4998 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
4999
5000         * testsuite/20_util/ratio/comparisons/comp3.cc: New.
5001
5002 2011-02-28  Marc Glisse  <marc.glisse@normalesup.org>
5003
5004         PR libstdc++/42622
5005         * include/std/ratio (ratio_less): Reimplement to never overflow.
5006         * testsuite/20_util/ratio/comparisons/comp2.cc: Extend.
5007
5008 2011-02-24  Benjamin Kosnik  <bkoz@redhat.com>
5009
5010         * testsuite/18_support/type_info/fundamental.cc: New.
5011
5012         * testsuite/Makefile.am: Make clean fixups.
5013         * testsuite/Makefile.in: Regenerate.
5014
5015 2011-02-19  François Dumont  <francois.cppdevs@free.fr>
5016
5017         * include/debug/string (basic_string::insert): Add iterator check and
5018         pass normal iterator to normal insert.
5019         * include/debug/macros.h (__glibcxx_check_heap,
5020         __glibcxx_check_heap_pred): Remove __glibcxx_check_valid_range,
5021         already done.
5022
5023 2011-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
5024
5025         PR libstdc++/47776
5026         * testsuite/ext/vstring/hash/char/1.cc: Fix.
5027         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
5028
5029 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
5030
5031         * include/bits/regex.h (basic_regex::traits_type): Add typedef.
5032         (basic_regex::basic_regex(basic_regex&&)): Add noexcept.
5033         (basic_regex::operator=(basic_regex&&)): Likewise.
5034         (basic_regex::assign(basic_regex&&)): Likewise.
5035         (operator==(sub_match,...)): Implement DR 1181.
5036         (match_results::match_results(match_results&&)): Define.
5037         (match_results::operator=(const match_results&)): Fix parameter type.
5038         (match_results::operator=(match_results&&)): Define.
5039
5040 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
5041
5042         PR libstdc++/47724
5043         * include/bits/regex_compiler.h (_Scanner::_M_advance): Do not treat
5044         line anchors as metacharacters.
5045         * testsuite/28_regex/basic_regex/ctors/47724.cc: New.
5046
5047 2011-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
5048
5049         PR libstdc++/47773
5050         * include/ext/vstring.h (hash<__gnu_cxx::__vstring>,
5051         hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>,
5052         hash<__gnu_cxx::__u32vstring>): Add.
5053         * testsuite/ext/vstring/hash/char/1.cc: New.
5054         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
5055
5056 2011-02-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
5057
5058         * include/bits/regex.h (match_results::format): Use char_traits.
5059
5060 2011-02-16  Benjamin Kosnik  <bkoz@redhat.com>
5061
5062         * include/std/atomic: Remove atomic_address, uplift to N3225.
5063         * include/bits/atomic_0.h: Same.
5064         * include/bits/atomic_2.h: Same.
5065         * include/bits/atomic_base.h: Same.
5066         * testsuite/29_atomics/atomic_address/*: Delete.
5067
5068 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
5069
5070         * include/bits/regex.h (sub_match::sub_match): Add.
5071         (match_results::ready): Add.
5072         (match_results::empty): Adjust.
5073         (match_results::length): Add missing dereference.
5074         (match_results::operator[],prefix,suffix): Add debug mode checks.
5075         (match_results::cend): Re-use end().
5076         (match_results::format): Adjust signatures.
5077         (operator==(match_results,match_results)): Implement.
5078         * include/bits/regex_compiler.h (_Scanner_base): Use constexpr.
5079         * include/bits/regex_constants.h (syntax_option_type): Likewise.
5080         * include/bits/regex_grep_matcher.h: Fix comment typo.
5081         (_SpecializedResults::_SpecializedResults): Simplify.
5082         * include/bits/regex_cursor.h: Fix comment typo.
5083         * include/bits/regex_nfa.h: Likewise.
5084         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
5085         Fix error code, remove xfail.
5086         * testsuite/28_regex/basic_regex/ctors/extended/
5087         string_range_01_02_03.cc: Likewise.
5088
5089 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
5090
5091         * include/bits/regex_compiler.h: Remove unnecessary bind() calls.
5092         * include/bits/regex_nfa.h: Remove unnecessary base classes.
5093
5094 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5095
5096         * configure: Regenerate.
5097
5098 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
5099
5100         PR libstdc++/47709
5101         * include/ext/algorithm (is_heap): In C++0x mode import from
5102         namespace std.
5103         * testsuite/ext/is_heap/47709.cc: New.
5104
5105 2011-02-12  Jakub Jelinek  <jakub@redhat.com>
5106             Jonathan Wakely  <jwakely.gcc@gmail.com>
5107
5108         PR libstdc++/47662
5109         * testsuite/17_intro/headers/c++200x/operator_names.cc: New.
5110         * testsuite/17_intro/headers/c++1998/operator_names.cc: Add comment.
5111
5112 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
5113
5114         * include/tr1/cmath (fabs): Define.
5115         * include/tr1/complex (acos, asin, atan): Avoid duplicate definitions
5116         in C++0x mode.
5117
5118 2011-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
5119
5120         * testsuite/tr1/headers/c++200x/complex.cc: New.
5121
5122 2011-02-11  Johannes Singler  <singler@kit.edu>
5123
5124         PR libstdc++/47433
5125         * include/parallel/losertree.h
5126         (_LoserTreeUnguarded<>::__delete_min_insert):
5127         Add missing "using std::swap;", as for other variants.
5128
5129 2011-02-10  Benjamin Kosnik  <bkoz@redhat.com>
5130
5131         * src/Makefile.am (sources): Add regex.cc.
5132         * src/Makefile.in: Regenerate.
5133         * src/regex.cc: New.
5134         * include/bits/regex_error.h (error_type): Use constexpr.
5135         (regex_error): Move ctor and dtor out of line.
5136
5137         * testsuite/28_regex/03_requirements: To...
5138         * testsuite/28_regex/requirements: ... this.
5139         * testsuite/28_regex/04_header: To...
5140         * testsuite/28_regex/headers: ... this.
5141         * testsuite/28_regex/05_constants: To...
5142         * testsuite/28_regex/constants: ... this.
5143         * testsuite/28_regex/06_exception_type: To...
5144         * testsuite/28_regex/regex_error: ... this.
5145         * testsuite/28_regex/07_traits: To...
5146         * testsuite/28_regex/traits: ... this.
5147         * testsuite/28_regex/08_basic_regex: To...
5148         * testsuite/28_regex/basic_regex: ... this.
5149         * testsuite/28_regex/09_sub_match: To...
5150         * testsuite/28_regex/sub_match: ... this.
5151         * testsuite/28_regex/10_match_results: To...
5152         * testsuite/28_regex/match_results: ... this.
5153         * testsuite/28_regex/11_algorithms: To...
5154         * testsuite/28_regex/algorithms: ... this.
5155         * testsuite/28_regex/12_iterators: To...
5156         * testsuite/28_regex/iterators: ... this.
5157
5158 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
5159
5160         PR libstdc++/47662
5161         * include/bits/c++config: Do not use alternative token.
5162         * testsuite/17_intro/headers/c++1998/operator_names.cc: New.
5163
5164 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
5165
5166         * src/future.cc (future_error_category::message): Handle no_state.
5167
5168 2011-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
5169
5170         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Do
5171         not test in C++0x mode.
5172         * testsuite/23_containers/map/modifiers/erase/47628.cc: Likewise.
5173         * testsuite/20_util/headers/utility/synopsis.cc: Tweak to work
5174         in C++0x mode too.
5175
5176 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
5177
5178         * doc/xml/manual/status_cxx200x.xml: Update.
5179         * doc/html/*: Regenerate.
5180
5181 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
5182
5183         * doc/xml/manual/debug.xml: Improve data race docs.
5184
5185 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
5186
5187         PR libstdc++/47668
5188         * include/debug/map.h (map): Remove unnecessary using-declaration.
5189         * include/debug/multimap.h (multimap): Likewise.
5190         * include/profile/map.h (map): Likewise.
5191         * include/profile/multimap.h (multimap): Likewise.
5192
5193 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
5194
5195         PR libstdc++/43863
5196         * libsupc++/guard.cc (recursive_init_error::~recursive_init_error):
5197         Move to ...
5198         * libsupc++/guard_error.cc: ... new file.
5199         * libsupc++/Makefile.am: Update.
5200         * libsupc++/Makefile.in: Regenerate.
5201
5202 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
5203
5204         * include/std/future (packaged_task::operator bool): Rename to...
5205         (packaged_task::valid): ...this.
5206         * testsuite/30_threads/packaged_task/cons/1.cc: Adjust.
5207         * testsuite/30_threads/packaged_task/cons/2.cc: Adjust.
5208         * testsuite/30_threads/packaged_task/cons/move.cc: Adjust.
5209         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Adjust.
5210         * testsuite/30_threads/packaged_task/cons/alloc.cc: Adjust.
5211         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
5212         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
5213         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
5214         * testsuite/30_threads/packaged_task/members/swap.cc: Adjust.
5215         * testsuite/30_threads/packaged_task/members/boolconv.cc: Remove.
5216         * testsuite/30_threads/packaged_task/members/valid.cc: Add.
5217
5218 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
5219
5220         * doc/xml/manual/io.xml: Fix typo.
5221         * doc/html/manual/streambufs.html: Likewise.
5222
5223 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
5224
5225         * config/abi/pre/gnu.ver: Fix.
5226
5227 2011-02-08  Benjamin Kosnik  <bkoz@redhat.com>
5228
5229         * doc/xml/manual/appendix_porting.xml: Add doc section.
5230         * doc/xml/manual/appendix_contributing.xml: Split out doc bits to...
5231         * doc/xml/manual/documentation_hacking.xml: ...here.
5232
5233         * doc/xml/manual/debug_mode.xml: Adjust.
5234         * doc/xml/manual/prerequisites.xml: Adjust.
5235         * doc/Makefile.am (xml_sources): Add dot files,
5236         documentation_hacking.xml.
5237         * doc/Makefile.in: Regenerate.
5238
5239         * doc/xml/manual/build_hacking.xml: Use absolute paths for images.
5240         * doc/xml/images/confdeps.pdf: Add.
5241
5242         * doc/html/*: Regenerate.
5243
5244 2011-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
5245
5246         * doc/xml/gnu/fdl-1.2.xml: Remove.
5247         * doc/xml/gnu/gpl-2.0.xml: Remove.
5248         * doc/Makefile.am: Update.
5249         * doc/Makefile.in: Regenerate.
5250
5251 2011-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
5252
5253         PR libstdc++/47628
5254         * include/bits/stl_tree.h (_Rb_tree::erase(iterator), erase(iterator,
5255         iterator)): Add back in C++03 mode.
5256         * testsuite/23_containers/map/modifiers/erase/47628.cc: New.
5257         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Likewise.
5258
5259 2011-02-07  Benjamin Kosnik  <bkoz@redhat.com>
5260
5261         PR libstdc++/47560 try two
5262         * config/os/hpux/os_defines.h: Guard for C++.
5263
5264 2011-02-07  Gerald Pfeifer  <gerald@pfeifer.com>
5265
5266         * doc/xml/faq.xml: Adjust link to bug database.
5267         Remove old item on broken header files.
5268
5269 2011-02-04  Benjamin Kosnik  <bkoz@redhat.com>
5270
5271         * include/bits/regex_error.h (__throw_regex_error): Not inline.
5272         * src/functexcept.cc: Add definition.
5273         * config/abi/pre/gnu.ver: Export.
5274
5275 2011-02-04  Ralf Corsépius <ralf.corsepius@rtems.org>
5276
5277         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*.
5278         * configure: Regenerate.
5279
5280 2011-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
5281
5282         PR libstdc++/46914
5283         * include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
5284         _ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
5285         avoid name conflicts.
5286
5287 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
5288
5289         PR libstdc++/47560
5290         * config/os/hpux/os_defines.h: Remove use of macros on namespace.
5291
5292 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
5293
5294         * scripts/run_doxygen: Allow doxygen 1.7.0 again.
5295         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): Re-enable.
5296         (COMPACT_LATEX): Enable.
5297
5298         * include/profile/impl/profiler_container_size.h: Adjust doxygen markup.
5299         * include/profile/impl/profiler_hash_func.h: Same.
5300         * include/bits/hashtable.h: Same.
5301         * include/backward/auto_ptr.h: Same.
5302         * include/backward/strstream: Same.
5303         * include/backward/backward_warning.h: Same.
5304         * include/backward/binders.h: Same.
5305
5306 2011-02-01  Gerald Pfeifer  <gerald@pfeifer.com>
5307
5308         * doc/xml/manual/debug.xml: Use GDB instead of gdb.
5309         Adjust link to GDB manual.
5310
5311 2011-01-31  Benjamin Kosnik  <bkoz@redhat.com>
5312
5313         * include/bits/c++config (_GLIBCXX_DEPRECATED): To
5314         _GLIBCXX_USE_DEPRECATED.
5315         (_GLIBCXX_DEPRECATED_ATTR): To _GLIBCXX_DEPRECATED.
5316         * doc/xml/manual/using.xml: Same.
5317         * include/std/memory: Same.
5318         * include/std/streambuf: Same.
5319         * include/bits/shared_ptr.h: Same.
5320         * include/bits/unique_ptr.h: Same.
5321         * include/bits/shared_ptr_base.h: Same.
5322         * include/bits/stl_function.h: Same.
5323         * include/tr1/shared_ptr.h: Same.
5324         * include/backward/auto_ptr.h: Same.
5325         * include/backward/binders.h: Same.
5326
5327 2011-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
5328
5329         * doc/html/ext/lwg-active.html: Update to Revision D73.
5330         * doc/html/ext/lwg-closed.html: Likewise.
5331         * doc/html/ext/lwg-defects.html: Likewise.
5332         * doc/xml/manual/intro.xml: Update status of issues 408, 539, 865.
5333
5334 2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>
5335
5336         PR libstdc++/36104 part four
5337         * include/bits/c++config (_GLIBCXX_STD): Remove.
5338         (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
5339         (_GLIBCXX_P): Now _GLIBCXX_STD_A.
5340         (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
5341          _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
5342         (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
5343          _GLIBCXX_INLINE_PROFILE): Remove.
5344         (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
5345         (_GLIBCXX_END_NAMESPACE): Remove.
5346         (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
5347         (_GLIBCXX_END_NESTED_NAMESPACE): Remove.
5348         (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
5349         (_GLIBCXX_END_NAMESPACE_ALGO): Add.
5350         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
5351         (_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
5352         (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
5353         (_GLIBCXX_END_NAMESPACE_VERSION): Add.
5354         (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
5355         (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
5356         (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
5357         * include/*: Use new macros for namespace scope.
5358         * config/*: Same.
5359         * src/*: Same.
5360
5361         * src/Makefile.am (sources): Remove debug_list.cc, add
5362         compatibility-debug_list-2.cc.
5363         (parallel_sources): Remove parallel_list.cc, add
5364         compatibility-parallel_list-2.cc.
5365         (compatibility-parallel_list-2.[o,lo]): New rule.
5366         * src/Makefile.in: Regenerate.
5367         * src/debug_list.cc: Remove.
5368         * src/parallel_list.cc: Remove.
5369         * src/compatibility-list-2.cc: New.
5370         * src/compatibility-debug_list-2.cc: New.
5371         * src/compatibility-parallel_list-2.cc: New.
5372
5373         * doc/doxygen/user.cfg.in: Adjust macros.
5374
5375         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
5376         * testsuite/20_util/declval/requirements/1_neg.cc: Same.
5377         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
5378         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
5379         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
5380         * testsuite/20_util/forward/c_neg.cc: Same.
5381         * testsuite/20_util/forward/f_neg.cc: Same.
5382         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
5383         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
5384         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
5385         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
5386         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
5387         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
5388         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
5389         * testsuite/23_containers/deque/requirements/dr438/
5390         constructor_1_neg.cc: Same.
5391         * testsuite/23_containers/deque/requirements/dr438/
5392         constructor_2_neg.cc: Same.
5393         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
5394         * testsuite/23_containers/forward_list/capacity/1.cc: Same.
5395         * testsuite/23_containers/forward_list/requirements/dr438/
5396         assign_neg.cc: Same.
5397         * testsuite/23_containers/forward_list/requirements/dr438/
5398         constructor_1_neg.cc: Same.
5399         * testsuite/23_containers/forward_list/requirements/dr438/
5400         constructor_2_neg.cc: Same.
5401         * testsuite/23_containers/forward_list/requirements/dr438/
5402         insert_neg.cc: Same.
5403         * testsuite/23_containers/list/capacity/29134.cc: Same.
5404         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
5405         * testsuite/23_containers/list/requirements/dr438/
5406         constructor_1_neg.cc: Same.
5407         * testsuite/23_containers/list/requirements/dr438/
5408         constructor_2_neg.cc: Same.
5409         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
5410         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
5411         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
5412         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
5413         * testsuite/23_containers/vector/requirements/dr438/
5414         constructor_1_neg.cc: Same.
5415         * testsuite/23_containers/vector/requirements/dr438/
5416         constructor_2_neg.cc: Same.
5417         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
5418         * testsuite/25_algorithms/sort/35588.cc: Same.
5419         * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
5420         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
5421         * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
5422         * testsuite/ext/profile/profiler_algos.cc: Same.
5423         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
5424         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
5425         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
5426         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
5427         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
5428
5429 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
5430
5431         * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification.
5432         Improve description of one such reference.
5433
5434 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
5435
5436         * doc/xml/manual/codecvt.xml: Fix link to The Austin Common
5437         Standards Revision Group.
5438         * doc/xml/manual/locale.xml: Ditto.
5439         * doc/xml/manual/messages.xml: Ditto.
5440         * doc/xml/manual/using_exceptions.xml: Ditto.
5441
5442 2011-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
5443
5444         * include/bits/atomic_base.h: Do not include <stddef.h>.
5445         (kill_dependency): Uglify ret.
5446
5447 2011-01-26  Johannes Singler  <singler@kit.edu>
5448
5449         * include/parallel/numeric (inner_product, partial_sum):
5450         Qualify subsequent call with __gnu_parallel instead of
5451         _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
5452         * include/parallel/algobase.h (equal): Likewise.
5453         * include/parallel/algo.h (find_first_of, search_n, merge,
5454         nth_element, partial_sort, max_element, min_element): Likewise.
5455         * testsuite/25_algorithms/headers/algorithm/
5456         parallel_algorithm_mixed1.cc (main): Add respective test cases.
5457         * testsuite/25_algorithms/headers/algorithm/
5458         parallel_algorithm_mixed2.cc (main): Likewise.
5459         * testsuite/26_numerics/headers/numeric/
5460         parallel_numeric_mixed1.cc (main): Likewise.
5461         * testsuite/26_numerics/headers/numeric/
5462         parallel_numeric_mixed2.cc (main): Likewise.
5463
5464 2011-01-24  Graham Reed  <greed@pobox.com>
5465
5466         PR libstdc++/47387
5467         * config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
5468         provided.
5469
5470 2011-01-24  Johannes Singler  <singler@kit.edu>
5471
5472         PR libstdc++/47433
5473         * include/parallel/losertree.h
5474         (_LoserTree<>::__delete_min_insert):
5475         Do not qualify swap with std:: for value type,
5476         but include a using directive instead.
5477         (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
5478         * include/parallel/balanced_quicksort.h (__qsb_divide):
5479         Use std::iter_swap instead of std::swap.
5480         (__qsb_local_sort_with_helping): Likewise.
5481         * include/parallel/partition.h (__parallel_partition):
5482         Likewise. (__parallel_nth_element): Likewise.
5483
5484 2011-01-24  Johannes Singler  <singler@kit.edu>
5485
5486         PR libstdc++/47437
5487         * include/parallel/multiway_merge.h (_UnguardedIterator):
5488         Remove useless "mutable" from reference declaration.
5489
5490 2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>
5491
5492         * include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove.
5493         * include/debug/safe_sequence.h: Same.
5494         * include/debug/safe_iterator.h: Same.
5495         * include/std/forward_list: Same.
5496         * include/std/deque: Same.
5497         * include/std/list: Same.
5498         * include/std/random: Same.
5499         * include/std/streambuf: Same.
5500         * include/std/fstream: Same.
5501         * include/std/istream: Same.
5502         * include/std/string: Same.
5503         * include/std/ostream: Same.
5504         * include/std/sstream: Same.
5505         * include/ext/vstring.h: Same.
5506         * include/bits/basic_ios.h: Same.
5507         * include/bits/locale_classes.h: Same.
5508         * include/bits/locale_facets.h: Same.
5509         * include/bits/valarray_array.h: Same.
5510         * include/bits/locale_facets_nonio.h: Same.
5511         * include/tr1/random: Same.
5512
5513 2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
5514
5515         * doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.
5516
5517 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
5518
5519         PR libstdc++/36104 part three
5520         * src/hashtable_c++0x.cc: Adjust namespace macros.
5521         * testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
5522         * config/abi/pre/gnu-versioned-namespace.ver: Update.
5523
5524 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
5525
5526         * include/ext/pb_ds/detail/resize_policy/
5527         hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
5528         * include/ext/pb_ds/detail/pat_trie_/
5529         constructors_destructor_fn_imps.hpp: Same.
5530         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
5531         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
5532         * include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.
5533
5534         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
5535         iterations downward when testing in debug mode.
5536         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
5537         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
5538         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
5539         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
5540         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
5541         * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
5542         reduce in debug mode.
5543
5544 2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>
5545
5546         PR libstdc++/36104 part two
5547         * include/bits/hashtable.h: Revert to non-nested macro usage.
5548         * include/bits/hashtable_policy.h: Same.
5549
5550 2011-01-19  Graham Reed  <greed@pobox.com>
5551
5552         PR libstdc++/47354
5553         * src/bitmap_allocator.cc (free_list::_M_get): Lock mutex.
5554
5555 2011-01-18  Benjamin Kosnik  <bkoz@redhat.com>
5556
5557         * doc/xml/images/confdeps.png: Regenerate.
5558
5559         * include/std/chrono (duration): Mark copy constructor constexpr.
5560         * testsuite/20_util/duration/cons/constexpr.cc: Add test.
5561
5562 2011-01-18  Paolo Carlini  <paolo.carlini@oracle.com>
5563
5564         * include/bits/unique_ptr.h (default_delete<>::default_delete()):
5565         Declare defaulted per DR 1517.
5566         * testsuite/util/testsuite_common_types.h
5567         (constexpr_defaulted_default_constructible): Add.
5568         * testsuite/20_util/default_delete/cons/constexpr.cc: Use it.
5569
5570 2011-01-17  Paolo Carlini  <paolo.carlini@oracle.com>
5571
5572         * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
5573         Implement DR 1198.
5574         * include/bits/stl_stack.h (stack<>::swap): Likewise.
5575
5576 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5577
5578         PR libstdc++/47323
5579         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
5580         Only test wregex when _GLIBCXX_USE_WCHAR_T is defined.
5581
5582 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5583
5584         PR libstdc++/47320
5585         * testsuite/18_support/numeric_limits/lowest.cc:
5586         Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined.
5587
5588 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5589
5590         PR libstdc++/47321
5591         * testsuite/21_strings/basic_string/requirements/typedefs.cc:
5592         Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined.
5593
5594 2011-01-16  François Dumont  <francois.cppdevs@free.fr>
5595
5596         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Move
5597         to this. Use _neg suffix.
5598         * testsuite/23_containers/forward_list/debug/erase_after1.cc: ...from
5599         this.
5600         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
5601         Same.
5602         * testsuite/23_containers/forward_list/debug/erase_after2.cc: Same.
5603         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
5604         Same.
5605         * testsuite/23_containers/forward_list/debug/erase_after3.cc: Same.
5606         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
5607         Same.
5608         * testsuite/23_containers/forward_list/debug/erase_after4.cc: Same.
5609         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
5610         Same.
5611         * testsuite/23_containers/forward_list/debug/erase_after5.cc: Same.
5612         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
5613         Same.
5614         * testsuite/23_containers/forward_list/debug/erase_after6.cc: Same.
5615         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
5616         Same.
5617         * testsuite/23_containers/forward_list/debug/erase_after7.cc: Same.
5618         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
5619         Same.
5620         * testsuite/23_containers/forward_list/debug/erase_after8.cc: Same.
5621         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
5622         Same.
5623         * testsuite/23_containers/forward_list/debug/erase_after9.cc: Same.
5624         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
5625         Same.
5626         * testsuite/23_containers/forward_list/debug/insert_after1.cc: Same.
5627         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
5628         Same.
5629         * testsuite/23_containers/forward_list/debug/insert_after2.cc: Same.
5630         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
5631         Same.
5632         * testsuite/23_containers/forward_list/debug/insert_after3.cc: Same.
5633         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
5634         Same.
5635         * testsuite/23_containers/forward_list/debug/splice_after1.cc: Same.
5636         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
5637         Same.
5638         * testsuite/23_containers/forward_list/debug/splice_after2.cc: Same.
5639         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
5640         Same.
5641         * testsuite/23_containers/forward_list/debug/splice_after3.cc: Same.
5642         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
5643         Same.
5644         * testsuite/23_containers/forward_list/debug/splice_after4.cc: Same.
5645
5646 2011-01-14  Benjamin Kosnik  <bkoz@redhat.com>
5647
5648         PR libstdc++/36104
5649         * include/Makefile.am (bits_sup_headers, stamp-bits-sup): New.
5650         * include/Makefile.in: Regenerate.
5651         * libsupc++/Makefile.am (std_HEADERS, bits_HEADERS): New.
5652         (install-stdHEADERS, install-bitsHEADERS): New.
5653         * libsupc++/Makefile.in: Regenerate.
5654
5655         * include/bits/c++config: Update for inline namespaces.
5656         * libsupc++/cxxabi-forced.h: To...
5657         * libsupc++/cxxabi_forced.h: ...this.
5658         * libsupc++/hash_bytes.h: Separate file.
5659         * libsupc++/typeinfo: Use it.
5660         * libsupc++/exception: Adjust for bits subdirectory.
5661         * libsupc++/eh_aux_runtime.cc: Same.
5662         * libsupc++/eh_ptr.cc: Same.
5663         * libsupc++/new_op.cc: Same.
5664         * libsupc++/exception_defines.h: Same.
5665         * libsupc++/nested_exception.h: Same.
5666         * libsupc++/eh_terminate.cc: Same.
5667         * libsupc++/vec.cc: Same.
5668         * libsupc++/vterminate.cc: Same.
5669         * libsupc++/exception_ptr.h: Same.
5670         * libsupc++/eh_personality.cc: Same.
5671         * libsupc++/eh_call.cc: Same.
5672         * libsupc++/new_opnt.cc: Same.
5673         * libsupc++/hash_bytes.cc: Same.
5674         * config/cpu/arm/cxxabi_tweaks.h: Same.
5675         * config/cpu/generic/cxxabi_tweaks.h: Same.
5676         * libsupc++/cxxabi.h: Same. Consolidate _GLIBCXX_NOTHROW defines.
5677         * include/std/bitset: Same.
5678         * include/ext/vstring.tcc: Same.
5679         * include/bits/hashtable.h: Same.
5680         * include/bits/functional_hash.h: Same.
5681         * include/bits/hashtable_policy.h: Same.
5682         * include/bits/basic_string.h: Same.
5683         * include/bits/istream.tcc: Same.
5684         * include/bits/ostream.tcc: Same.
5685         * include/bits/algorithmfwd.h: Same.
5686         * include/bits/basic_string.tcc: Same.
5687         * include/bits/ostream_insert.h: Same.
5688         * include/bits/fstream.tcc: Same.
5689         * include/bits/functexcept.h: Same.
5690
5691         * doc/doxygen/user.cfg.in: Adjust names.
5692
5693         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
5694
5695 2011-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
5696
5697         * testsuite/25_algorithms/is_permutation/check_type.cc: Minor
5698         tweaks.
5699         * testsuite/25_algorithms/is_permutation/1.cc: Cosmetic changes.
5700
5701 2011-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
5702
5703         * testsuite/25_algorithms/is_permutation/check_type.cc: New.
5704         * testsuite/25_algorithms/is_permutation/requirements/
5705         explicit_instantiation/2.cc: Likewise.
5706         * testsuite/25_algorithms/is_permutation/requirements/
5707         explicit_instantiation/pod.cc: Likewise.
5708         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
5709
5710 2011-01-13  John Lakos  <jlakos@bloomberg.net>
5711             Pablo Halpern  <phalpern@halpernwightsoftware.com>
5712             Paolo Carlini  <paolo.carlini@oracle.com>
5713
5714         * include/bits/stl_algo.h (is_permutation): Add, per N3068.
5715         * include/bits/algorithmfwd.h: Add.
5716
5717 2011-01-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
5718
5719         PR libstdc++/47045
5720         * config/os/bsd/netbsd/ctype_base.h: Use new macros based on version.
5721
5722 2011-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
5723
5724         * aclocal.m4: Regenerate.
5725
5726 2011-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
5727
5728         PR libstdc++/47185
5729         * src/placeholders.cc: New.
5730         * src/Makefile.am: Adjust.
5731         * src/Makefile.in: Regenerate.
5732         * include/std/functional (placeholders::_1, _2, ..., _29): Declare
5733         extern.
5734         * config/abi/pre/gnu.ver: Export.
5735
5736 2011-01-05  François Dumont  <francois.cppdevs@free.fr>
5737
5738         * include/debug/safe_base.h (_Safe_iterator_base::_M_unlink): New.
5739         * include/src/debug.cc: Use latter
5740         * include/debug/forward_list (forward_list<>::_M_swap):  Fix to
5741         correctly handle before_begin iterators.
5742         * testsuite/23_containers/forward_list/debug/swap.cc: Remove now
5743         useless _GLIBCXX_DEBUG checks.
5744
5745 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
5746
5747         PR libstdc++/47145
5748         * configure.ac (AC_CHECK_FILE): Replaced by test -f.
5749         * configure: Regenerated.
5750
5751 2011-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
5752
5753         PR libstdc++/46922
5754         * config/abi/pre/gnu.ver: Export std::bad_function_call symbols.
5755
5756 \f
5757 Copyright (C) 2011 Free Software Foundation, Inc.
5758
5759 Copying and distribution of this file, with or without modification,
5760 are permitted in any medium without royalty provided the copyright
5761 notice and this notice are preserved.