OSDN Git Service

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