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