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