2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob6424c558aced8fc774ddbea6dee95c4b119e7ee5
1 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
3         * include/Makefile.am: Add new header.
4         * include/Makefile.in: Regenerate.
5         * include/std/scoped_allocator: New.
6         * doc/xml/manual/status_cxx200x.xml: Update.
7         * testsuite/20_util/scoped_allocator/1.cc: New.
8         * testsuite/20_util/scoped_allocator/propagation.cc: New.
9         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
10         * testsuite/20_util/scoped_allocator/requirements/
11         explicit_instantiation.cc: New.
13 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
15         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
16         * include/bits/vector.tcc: Likewise.
17         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
18         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
19         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
20         * testsuite/23_containers/vector/allocator/copy.cc: New.
21         * testsuite/23_containers/vector/allocator/swap.cc: New.
22         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
23         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
24         Adjust dg-error line numbers.
25         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
26         Likewise.
27         * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
28         Likewise.
29         * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
30         Likewise.
32 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
34         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
35         trait, provide partial specializations for known allocators.
36         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
37         non-standard pointer types.
38         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
39         (__alloc_traits::_S_nothrow_move): Likewise.
40         (__alloc_traits::_S_nothrow_swap): Likewise.
42 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
44         * include/ext/cast.h: Fix typo in include guard.
45         * include/ext/pointer.h (_Unqualified_type): Remove redundant
46         partial specializations for volatile types. Fix typos in comments.
47         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
49 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
51         PR libstdc++/49668
52         * include/std/functional (__bind_simple): Define.
53         * include/std/future (_Task_setter): Parameterize by type of result
54         pointer instead of state object.
55         (_S_task_setter): Type deduction helper.
56         (_Task_state): Use _S_task_setter and __bind_simple.
57         (_Deferred_state, _Async_state): Store call wrapper directly not as
58         std::function. Use _S_task_setter and __bind_simple.
59         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
60         (async): Use new functions and __bind_simple.
61         * include/std/mutex (call_once): Use __bind_simple.
62         * include/std/thread (thread): Likewise. Remove unused headers.
63         * src/thread.cc: Add header.
64         * testsuite/30_threads/async/49668.cc: New.
65         * testsuite/30_threads/call_once/49668.cc: New.
66         * testsuite/30_threads/thread/cons/49668.cc: New.
67         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
69 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
71         * configure.host (abi_baseline_subdir_switch): Describe.
72         Provide default.
73         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
74         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
75         baseline_subdir_switch.
76         * testsuite/Makefile.am (site.exp): Emit it.
77         (baseline_subdir): Use it.
78         * testsuite/libstdc++-abi/abi.exp: Use it.
79         * configure: Regenerate.
80         * Makefile.in: Regenerate.
81         * doc/Makefile.in: Regenerate.
82         * include/Makefile.in: Regenerate.
83         * libsupc++/Makefile.in: Regenerate.
84         * po/Makefile.in: Regenerate.
85         * python/Makefile.in: Regenerate.
86         * src/Makefile.in: Regenerate.
87         * testsuite/Makefile.in: Regenerate.
89 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
91         * include/debug/set.h, unordered_map, multiset.h, forward_list,
92         unordered_set, vector, deque, string, list, multimap.h: Remove
93         base class default constructor calls.
94         * include/debug/map.h: Likewise and cleanup several redefinition of
95         base iterator typedef.
97 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
99         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
100         thrown object here.  Return succeded_with_ptr_to_base for all
101         pointer cases.
103 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
105         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
106         C++0x mode.
107         * testsuite/25_algorithms/sort/35588.cc: Likewise.
108         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
110 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
112         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
114 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
116         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
117         warning.
119 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
121         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
122         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
123         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
124         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
125         Likewise.
126         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
127         * testsuite/20_util/bind/socket.cc: Likewise.
128         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
129         * testsuite/util/testsuite_random.h: Likewise.
131 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
133         * include/Makefile.am: Add alloc_traits.h headers.
134         * include/Makefile.in: Regenerate.
135         * include/std/memory: Include uses_allocator.h explicitly.
136         * include/bits/allocator.h (allocator_traits): Move to ...
137         * include/bits/alloc_traits.h: New header.
138         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
139         a common allocator interface for C++98 and C++0x.
140         * include/bits/stl_construct.h: Use __alloc_traits.
141         * include/bits/stl_uninitialized.h: Likewise.
143 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
144             Paolo Carlini  <paolo.carlini@oracle.com>
146         * include/bits/move.h (__is_nothrow_swappable): Add.
147         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
148         * include/bits/algorithmfwd.h: Adjust.
149         * testsuite/25_algorithms/swap/noexcept.cc: New.
151 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
153         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
154         check-DEJAGNUnormal[4-9].
155         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
156         * testsuite/Makefile.in: Regenerated.
158 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
159             Paolo Carlini  <paolo.carlini@oracle.com>
161         * include/std/tuple (__conv_types, __one_by_one_convertible,
162         __all_convertible): Add.
163         (tuple): Use the latter.
164         (tuple<_T1>): Remove.
165         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
166         line number.
167         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
169 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
171         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
172         noexcept.
174 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
176         * include/std/valarray (~valarray): Use noexcept.
177         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
178         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
179         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
180         Likewise.
181         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
182         Likewise.
183         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
184         Likewise.
186 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
188         * include/std/functional: Use noexcept.
189         * include/bits/stl_tempbuf.h: Likewise.
191 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
192             Paolo Carlini  <paolo.carlini@oracle.com>
194         * include/bits/allocator.h (__shrink_to_fit): Rename to
195         __shrink_to_fit_aux, fix.
196         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
197         (shrink_to_fit): Use the latter.
198         * include/debug/vector (shrink_to_fit): Likewise.
199         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
200         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
201         (shrink_to_fit): Use the latter.
202         * include/debug/deque (shrink_to_fit): Likewise.
203         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
204         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
205         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
206         (shrink_to_fit): Use the latter.
207         (reserve): Use _M_reallocate, move inline.
208         (_Bvector_base<>::_S_nword): Add, use it throughout.
209         * include/debug/string (shrink_to_fit): Redo.
210         * include/ext/vstring.h (shrink_to_fit): Optimize.
211         * include/bits/basic_string.h (shrink_to_fit): Likewise.
212         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
213         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
214         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
215         Likewise.
216         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
217         Likewise.
218         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
220 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
222         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
223         C++0x mode.
224         * testsuite/25_algorithms/sort/35588.cc: Likewise.
225         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
227 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
229         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
230         mode by overloading to take allocator's pointer type.
231         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
232         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
233         2.cc: New.
235 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
237         * testsuite/20_util/allocator_traits/requirements/
238         explicit_instantiation.cc: Add another instantiation.
240 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
242         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
243         for allocator_type and value_type.
245 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
247         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
248         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
250 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
252         * include/ext/throw_allocator.h: Use noexcept.
253         * include/ext/pool_allocator.h: Likewise.
254         * include/ext/bitmap_allocator.h: Likewise.
255         * include/ext/new_allocator.h: Likewise.
256         * include/ext/malloc_allocator.h: Likewise.
257         * include/ext/array_allocator.h: Likewise.
258         * include/ext/mt_allocator.h: Likewise.
259         * include/ext/extptr_allocator.h: Likewise.
260         * testsuite/util/testsuite_allocator.h: Likewise; do not include
261         <cassert> directly, include <testsuite_hooks.h> instead.
263 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
265         * include/ext/pb_ds/*: Doxygen markup redo.
266         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
267         * include/Makefile.in: Regenerate.
269 2011-06-10  Jason Merrill  <jason@redhat.com>
271         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
273         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
274         fix dg-error markup.
276 2011-06-09  Jason Merrill  <jason@redhat.com>
278         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
280         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
281         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
282         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
283         * testsuite/20_util/forward/1_neg.cc: Likewise.
284         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
285         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
286         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
287         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
288         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
289         Likewise.
290         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
291         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
292         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
293         Likewise.
294         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
295         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
296         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
297         Likewise.
298         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
299         auto_ptr_rvalue_neg.cc: Likewise.
300         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
301         Likewise.
302         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
303         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
304         Likewise.
305         * testsuite/23_containers/deque/requirements/dr438/
306         constructor_1_neg.cc: Likewise.
307         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
308         Likewise.
309         * testsuite/23_containers/forward_list/requirements/dr438/
310         assign_neg.cc: Likewise.
311         * testsuite/23_containers/forward_list/requirements/dr438/
312         constructor_1_neg.cc: Likewise.
313         * testsuite/23_containers/forward_list/requirements/dr438/
314         constructor_2_neg.cc: Likewise.
315         * testsuite/23_containers/forward_list/requirements/dr438/
316         insert_neg.cc: Likewise.
317         * testsuite/23_containers/list/requirements/dr438/
318         assign_neg.cc: Likewise.
319         * testsuite/23_containers/list/requirements/dr438/
320         constructor_1_neg.cc: Likewise.
321         * testsuite/23_containers/list/requirements/dr438/
322         constructor_2_neg.cc: Likewise.
323         * testsuite/23_containers/list/requirements/dr438/
324         insert_neg.cc: Likewise.
325         * testsuite/23_containers/vector/requirements/dr438/
326         assign_neg.cc: Likewise.
327         * testsuite/23_containers/vector/requirements/dr438/
328         constructor_1_neg.cc: Likewise.
329         * testsuite/23_containers/vector/requirements/dr438/
330         constructor_2_neg.cc: Likewise.
331         * testsuite/23_containers/vector/requirements/dr438/
332         insert_neg.cc: Likewise.
333         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
334         * testsuite/29_atomics/atomic_integral/operators/
335         bitwise_neg.cc: Likewise.
336         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
337         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
338         * testsuite/decimal/operator_neg.cc: Likewise.
340 2011-06-09  Simon Baldwin  <simonb@google.com>
342         * scripts/extract_symvers.in: Handle processor/OS specific or
343         unknown symbol binding strings from readelf.
345 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
347         * include/std/type_traits (__is_copy_assignable_impl,
348         __is_nt_copy_assignable_impl): Fix typo.
350 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
352         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
353         instead of <limits>.
354         * include/bits/allocator.h: Likewise.
356         * include/std/chrono (duration_values<>::min): Call lowest, not min.
358 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
360         * include/bits/allocator.h (__shrink_to_fit): Simplify.
361         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
362         * include/bits/stl_deque.h: Likewise.
363         * include/bits/stl_bvector.h: Likewise.
365 2011-06-07  Jason Merrill  <jason@redhat.com>
367         * testsuite/lib/prune.exp: s/required/instantiated/.
368         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
369         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
370         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
371         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
372         * testsuite/20_util/forward/1_neg.cc: Likewise.
373         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
374         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
375         Likewise.
376         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
377         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
378         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
379         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
380         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
381         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
382         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
383         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
384         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
385         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
386         shared_ptr_neg.cc: Likewise.
388 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
390         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
391         (move_if_noexcept): Use the latter.
392         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
393         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
394         * include/bits/stl_uninitialized.h
395         (__uninitialized_move_if_noexcept_a): Add.
396         * include/bits/vector.tcc (vector<>::reserve): Use
397         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
398         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
399         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
400         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
401         Add.
402         (copycounter::copycounter(copycounter&&)): Use noexcept.
403         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
404         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
405         Likewise.
406         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
407         Likewise.
409 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
411         PR libstdc++/49293
412         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
413         for glibc 2.14.
414         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
416 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
418         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
420 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
422         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
423         * include/ext/pointer.h (pointer_traits): Add partial specialization
424         for _Pointer_adapter.
426 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
428         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
429         Update to C++0x definition using type to construct as template
430         parameter.
431         (tracker_allocator::destroy): Likewise for type to destroy.
432         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
434 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
436         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
437         Use std::move on the allocator, use noexcept.
438         (_Hashtable<>::~_Hashtable): Use noexcept.
439         * include/bits/stl_list.h: Likewise.
440         * include/bits/forward_list.h: Likewise.
441         * include/bits/stl_vector.h: Likewise.
442         * include/bits/stl_bvector.h: Likewise.
443         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
444         * include/bits/stl_set.h: Likewise.
445         * include/bits/stl_multimap.h: Likewise.
446         * include/bits/stl_multiset.h: Likewise.
447         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
448         std::move on the allocator.
449         (_Rb_tree<>::~_Rb_tree): Use noexcept.
450         * include/bits/stl_deque.h: Likewise.
451         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
452         noexcept.
453         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
454         * include/debug/set.h: Adjust.
455         * include/debug/unordered_map: Likewise.
456         * include/debug/multiset.h: Likewise.
457         * include/debug/forward_list: Likewise.
458         * include/debug/vector: Likewise.
459         * include/debug/unordered_set: Likewise.
460         * include/debug/deque: Likewise.
461         * include/debug/map.h: Likewise.
462         * include/debug/string: Likewise.
463         * include/debug/list: Likewise.
464         * include/debug/multimap.h: Likewise.
465         * include/profile/set.h: Likewise.
466         * include/profile/unordered_map: Likewise.
467         * include/profile/multiset.h: Likewise.
468         * include/profile/forward_list: Likewise.
469         * include/profile/unordered_set: Likewise.
470         * include/profile/vector: Likewise.
471         * include/profile/deque: Likewise.
472         * include/profile/map.h: Likewise.
473         * include/profile/list: Likewise.
474         * include/profile/multimap.h: Likewise.
475         * testsuite/21_strings/basic_string/cons/wchar_t/
476         noexcept_move_construct.cc: New.
477         * testsuite/21_strings/basic_string/cons/char/
478         noexcept_move_construct.cc: Likewise.
479         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
480         * testsuite/23_containers/unordered_map/cons/
481         noexcept_move_construct.cc: Likewise.
482         * testsuite/23_containers/multimap/cons/
483         noexcept_move_construct.cc: Likewise.
484         * testsuite/23_containers/set/cons/
485         noexcept_move_construct.cc: Likewise.
486         * testsuite/23_containers/unordered_multimap/cons/
487         noexcept_move_construct.cc: Likewise.
488         * testsuite/23_containers/forward_list/cons/
489         noexcept_move_construct.cc: Likewise.
490         * testsuite/23_containers/unordered_set/cons/
491         noexcept_move_construct.cc: Likewise.
492         * testsuite/23_containers/vector/bool/cons/
493         noexcept_move_construct.cc: Likewise.
494         * testsuite/23_containers/vector/cons/
495         noexcept_move_construct.cc: Likewise.
496         * testsuite/23_containers/multiset/cons/
497         noexcept_move_construct.cc: Likewise.
498         * testsuite/23_containers/list/cons/
499         noexcept_move_construct.cc: Likewise.
500         * testsuite/23_containers/unordered_multiset/cons/
501         noexcept_move_construct.cc: Likewise.
502         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
503         * testsuite/23_containers/forward_list/requirements/dr438/
504         assign_neg.cc: Adjust dg-error line numbers.
505         * testsuite/23_containers/forward_list/requirements/dr438/
506         insert_neg.cc: Likewise.
507         * testsuite/23_containers/forward_list/requirements/dr438/
508         constructor_1_neg.cc: Likewise.
509         * testsuite/23_containers/forward_list/requirements/dr438/
510         constructor_2_neg.cc: Likewise.
511         * testsuite/23_containers/vector/requirements/dr438/
512         assign_neg.cc: Likewise.
513         * testsuite/23_containers/vector/requirements/dr438/
514         insert_neg.cc: Likewise.
515         * testsuite/23_containers/vector/requirements/dr438/
516         constructor_1_neg.cc: Likewise.
517         * testsuite/23_containers/vector/requirements/dr438/
518         constructor_2_neg.cc: Likewise.
519         * testsuite/23_containers/deque/requirements/dr438/
520         assign_neg.cc: Likewise.
521         * testsuite/23_containers/deque/requirements/dr438/
522         insert_neg.cc: Likewise.
523         * testsuite/23_containers/deque/requirements/dr438/
524         constructor_1_neg.cc: Likewise.
525         * testsuite/23_containers/deque/requirements/dr438/
526         constructor_2_neg.cc: Likewise.
527         * testsuite/23_containers/list/requirements/dr438/
528         assign_neg.cc: Likewise.
529         * testsuite/23_containers/list/requirements/dr438/
530         insert_neg.cc: Likewise.
531         * testsuite/23_containers/list/requirements/dr438/
532         constructor_1_neg.cc: Likewise.
533         * testsuite/23_containers/list/requirements/dr438/
534         constructor_2_neg.cc: Likewise.
536         * include/bits/move.h (swap): Use __and_ in the noexcept.
537         * include/bits/algorithmfwd.h: Adjust.
539 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
541         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
542         compare(const string&), which uses char_traits::compare, which
543         isn't noexcept; also no noexcept in the move assignment operator
544         and move assign, see c++std-lib-30855).
545         * include/bits/basic_string.tcc: Likewise.
546         * include/ext/vstring.h: Likewise.
547         * include/ext/vstring.tcc: Likewise.
548         * include/debug/string: Likewise.
550 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
552         * doc/xml/manual/status_cxx200x.xml: Update.
553         * doc/html/*: Regenerate.
555 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
557         * include/std/type_traits (__or_, __and_): Add trivial definitions
558         for a single element.
559         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
560         constraints.
561         (pair<>::pair(pair&&)): Define.
562         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
563         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
564         * include/std/tuple: Use __and_ in noexcept specs and constraints.
565         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
566         _Tuple_impl&&)): Remove noexcept.
567         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
568         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
569         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
570         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
571         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
572         Adjust dg-error line numbers.
573         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
574         Likewise.
575         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
576         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
577         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
579 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
581         * include/std/tuple: Restore is_convertible constraint.
582         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
584 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
586         PR libstdc++/49236
587         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
588         line number.
590 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
592         * include/std/tuple: Implement uses-allocator construction.
593         * include/bits/allocator.h (uses_allocator): Move to ...
594         * include/bits/uses_allocator.h: New file.
595         * include/Makefile.am: Add new header.
596         * include/Makefile.in: Regenerate.
597         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
598         * testsuite/20_util/uses_allocator/construction.cc: New.
599         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
600         * testsuite/20_util/tuple/cons/allocators.cc: New.
602 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
604         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
606 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
608         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
609         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
610         * configure.ac: Use them. Increase minor version.
611         * configure: Regenerate.
612         * config.h.in: Regenerate.
613         * include/std/thread (thread::hardware_concurrency): Remove inline
614         definition.
615         * src/thread.cc (thread::hardware_concurrency): Define.
616         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
617         * testsuite/util/testsuite_abi.cc: Add new version.
618         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
619         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
620         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
621         dg-require-nprocs and verify hardware_concurrency returns non-zero.
623 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
625         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
627 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
629         * include/Makefile.am: Add new ptr_traits.h header.
630         * include/Makefile.in: Regenerate.
631         * include/bits/ptr_traits.h (pointer_traits): New.
632         * include/bits/allocator.h (allocator_traits): Add.
633         * include/ext/array_allocator.h (construct, destroy): Update C++0x
634         versions.
635         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
636         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
637         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
638         * include/ext/mt_allocator.h (construct, destroy): Likewise.
639         * include/ext/new_allocator.h (construct, destroy): Likewise.
640         * include/ext/pool_allocator.h (construct, destroy): Likewise.
641         * include/ext/throw_allocator.h (construct, destroy): Likewise.
642         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
643         * testsuite/20_util/allocator_traits/requirements/
644         explicit_instantiation.cc: New.
645         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
646         * testsuite/20_util/allocator_traits/members/select.cc: New.
647         * testsuite/20_util/allocator_traits/members/construct.cc: New.
648         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
649         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
650         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
651         * testsuite/20_util/pointer_traits/requirements/
652         explicit_instantiation.cc: New.
654 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
656         * include/std/future (launch): Update enumerators and define
657         operators required for bitmask type. Remove trailing whitespace.
658         * src/future.cc: Remove trailing whitespace.
659         * testsuite/30_threads/async/any.cc: Adjust.
660         * testsuite/30_threads/async/sync.cc: Adjust.
661         * testsuite/30_threads/async/launch.cc: New.
663 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
665         * include/std/future: Use noexcept.
666         * src/future.cc: Likewise.
668 2011-05-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
670         * include/std/thread (this_thread::sleep_until): Move after sleep_for.
672 2011-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
674         PR libstdc++/49187
675         * include/parallel/losertree.h: Add missing using declarations
676         of _Base::_M_comp.
677         * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>.
678         * include/parallel/multiway_merge.h: Include <parallel/
679         multiseq_selection.h>, forward declare __merge_advance.
680         * include/parallel/multiseq_selection.h: Don't include <parallel/
681         sort.h> here.
682         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix
683         qualification of upper_bound.
685         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc:
686         Use dg-require-debug-mode.
687         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc:
688         Likewise.
689         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc:
690         Likewise.
691         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc:
692         Likewise.
693         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc:
694         Likewise.
695         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
696         Likewise.
697         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
698         Likewise.
699         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc:
700         Likewise.
701         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc:
702         Likewise.
704         * include/parallel/algo.h: Minor uglification fixes.
706 2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
708         * src/list.cc: Use noexcept per the FDIS.
709         * src/compatibility-list-2.cc: Likewise.
710         * include/debug/set.h: Likewise.
711         * include/debug/unordered_map: Likewise.
712         * include/debug/multiset.h: Likewise.
713         * include/debug/forward_list: Likewise.
714         * include/debug/unordered_set: Likewise.
715         * include/debug/vector: Likewise.
716         * include/debug/map.h: Likewise.
717         * include/debug/deque: Likewise.
718         * include/debug/list: Likewise.
719         * include/debug/multimap.h: Likewise.
720         * include/profile/set.h: Likewise.
721         * include/profile/unordered_map: Likewise.
722         * include/profile/multiset.h: Likewise.
723         * include/profile/forward_list: Likewise.
724         * include/profile/vector: Likewise.
725         * include/profile/unordered_set: Likewise.
726         * include/profile/map.h: Likewise.
727         * include/profile/deque: Likewise.
728         * include/profile/list: Likewise.
729         * include/profile/multimap.h: Likewise.
730         * include/bits/hashtable.h: Likewise.
731         * include/bits/stl_list.h: Likewise.
732         * include/bits/stl_map.h: Likewise.
733         * include/bits/hashtable_policy.h: Likewise.
734         * include/bits/stl_set.h: Likewise.
735         * include/bits/forward_list.h: Likewise.
736         * include/bits/stl_multimap.h: Likewise.
737         * include/bits/stl_vector.h: Likewise.
738         * include/bits/stl_deque.h: Likewise.
739         * include/bits/stl_multiset.h: Likewise.
740         * include/bits/stl_bvector.h: Likewise.
741         * include/bits/stl_tree.h: Likewise.
743 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
745         * include/bits/stl_queue.h: Use noexcept per the FDIS.
746         * include/bits/stl_stack.h: Likewise.
748 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
750         * config/abi/pre/gnu.ver: Correct last change, export instead
751         at the existing @3.4.16.
752         * configure.ac: Revert last change.
753         * testsuite/util/testsuite_abi.cc: Likewise.
754         * configure: Regenerate.
756 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
758         * doc/xml/manual/documentation_hacking.xml: Minor corrections.
760 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
762         * include/std/mutex: Add doxygen comments.
764 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
766         * config/abi/pre/gnu.ver: Export recently added  basic_streambuf
767         and basic_stringbuf symbols @3.4.17.
768         * configure.ac: Update.
769         * testsuite/util/testsuite_abi.cc: Likewise.
770         * configure: Regenerate.
772 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
774         * libsupc++/guard.cc: Fix comments.
776 2011-05-25  Ian Lance Taylor  <iant@google.com>
778         PR libstdc++/49060
779         * include/backward/hashtable.h (hashtable::erase): Don't crash if
780         erasing first and another element with a reference to the other
781         element.
782         * testsuite/backward/hash_set/49060.cc: New.
784 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
786         * include/bits/random.h (random_device::min, max): Specify constexpr.
788 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
790         * include/std/thread: Use noexcept throughout per the FDIS.
791         * include/std/mutex: Likewise.
793 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
795         * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
797 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
799         PR libstdc++/49151
800         * include/std/chrono (operator+, operator-, operator*, operator/,
801         operator&): Implement LWG 2020 [WP]; specify constexpr.
802         * testsuite/20_util/duration/arithmetic/dr2020.cc: New.
804 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
806         PR libstdc++/49141
807         * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
808         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
809         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
811 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
813         * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
814         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
815         line number.
817 2011-05-23  Benjamin Kosnik  <bkoz@redhat.com>
819         PR libstdc++/37144
820         PR libstdc++/28457
821         Interface changes for ext/pb_ds.
822         PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
823         * include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
824         (basic_hash_table, basic_branch, list_update): Derive from
825         container_base_dispatch.
826         * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
827         (move_to_front_lu_policy): To lu_move_to_front_policy.
828         (counter_lu_policy): To lu_counter_policy.
829         * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
830         * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
831         template parameters, declare here.
832         (null_mapped_type) Remove.
833         (null_type): Just use this for template tricks everywhere.
834         * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
835         Remove.
836         * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
837         (string_trie_e_access_traits): To trie_string_access_traits.
838         * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
840         File changes.
841         * include/Makefile.am (pb_headers): Removed and changed file names.
842         * include/Makefile.in: Regenerated.
843         * include/ext/pb_ds/detail/basic_types.hpp: Remove.
844         * include/ext/pb_ds/detail/bin_search_tree_/
845           cond_dtor_entry_dealtor.hpp: Remove.
846         * include/ext/pb_ds/detail/bin_search_tree_/
847           cond_key_dtor_entry_dealtor.hpp: Remove.
848         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
849         * include/ext/pb_ds/detail/binary_heap_/
850           point_const_iterator.hpp: ..here.
851         * include/ext/pb_ds/detail/basic_tree_policy: Move to...
852         * include/ext/pb_ds/detail/branch_policy: This.
853         * include/ext/pb_ds/detail/branch_policy/
854           basic_tree_policy_base.hpp: Move...
855         * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
856         * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
857         * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
858         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
859         null_metadata.hpp: Remove.
860         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
861         const_point_iterator.hpp: Move...
862         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
863         point_const_iterator.hpp: ...here.
864         * include/ext/pb_ds/detail/list_update_policy/
865         counter_lu_metadata.hpp: Move..
866         * include/ext/pb_ds/detail/list_update_policy/
867         lu_counter_metadata.hpp: ...here.
868         * include/ext/pb_ds/detail/list_update_policy/
869         counter_lu_policy_imp.hpp: Remove.
870         * include/ext/pb_ds/detail/list_update_policy/
871         mtf_lu_policy_imp.hpp: Remove.
872         * include/ext/pb_ds/detail/trie_policy/
873         string_trie_e_access_traits_imp.hpp: Move...
874         * include/ext/pb_ds/detail/trie_policy/
875         sample_trie_access_traits.hpp: ...here.
876         * include/ext/pb_ds/detail/trie_policy/
877         sample_trie_e_access_traits.hpp: Move...
878         * include/ext/pb_ds/detail/trie_policy/
879         trie_string_access_traits_imp.hpp: ...here.
880         * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
881         * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
882         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
883         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
884         types found in the following files into pat_trie_base.
885         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
886         * include/ext/pb_ds/detail/pat_trie_/
887           cond_dtor_entry_dealtor.hpp: Folded.
888         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
889         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
890         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
891         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
892         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
893         * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
894         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
895         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
896         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
897         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
898         * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
899         * include/ext/pb_ds/detail/unordered_iterator/
900         const_point_iterator.hpp: Move...
901         * include/ext/pb_ds/detail/unordered_iterator/
902         point_const_iterator.hpp: ...here.
905         Adjust for above changes.
906         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
907         * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
908         * include/ext/pb_ds/detail/resize_policy/
909           sample_resize_trigger.hpp: Same.
910         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
911         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
912         * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
913         * include/ext/pb_ds/detail/binomial_heap_base_/
914           binomial_heap_base_.hpp: Same.
915         * include/ext/pb_ds/detail/binomial_heap_base_/
916           constructors_destructor_fn_imps.hpp: Same.
917         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
918         * include/ext/pb_ds/detail/binomial_heap_base_/
919           split_join_fn_imps.hpp: Same.
920         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
921           for template parameter ordering change.
922         * include/ext/pb_ds/detail/cc_hash_table_map_/
923           erase_store_hash_fn_imps.hpp: Same.
924         * include/ext/pb_ds/detail/cc_hash_table_map_/
925           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
926         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
927         * include/ext/pb_ds/detail/cc_hash_table_map_/
928           insert_no_store_hash_fn_imps.hpp: Same.
929         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
930         * include/ext/pb_ds/detail/cc_hash_table_map_/
931           policy_access_fn_imps.hpp: Same.
932         * include/ext/pb_ds/detail/cc_hash_table_map_/
933           resize_store_hash_fn_imps.hpp: Same.
934         * include/ext/pb_ds/detail/cc_hash_table_map_/
935           constructor_destructor_store_hash_fn_imps.hpp: Same.
936         * include/ext/pb_ds/detail/cc_hash_table_map_/
937           insert_store_hash_fn_imps.hpp: Same.
938         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
939         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
940         * include/ext/pb_ds/detail/cc_hash_table_map_/
941           entry_list_fn_imps.hpp: Same.
942         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
943         * include/ext/pb_ds/detail/cc_hash_table_map_/
944           find_store_hash_fn_imps.hpp: Same.
945         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
946         * include/ext/pb_ds/detail/cc_hash_table_map_/
947           debug_no_store_hash_fn_imps.hpp: Same.
948         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
949         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
950         * include/ext/pb_ds/detail/cc_hash_table_map_/
951           constructor_destructor_fn_imps.hpp: Same.
952         * include/ext/pb_ds/detail/cc_hash_table_map_/
953           cond_key_dtor_entry_dealtor.hpp: Same.
954         * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
955         * include/ext/pb_ds/detail/cc_hash_table_map_/
956           debug_store_hash_fn_imps.hpp: Same.
957         * include/ext/pb_ds/detail/cc_hash_table_map_/
958           erase_no_store_hash_fn_imps.hpp: Same.
959         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
960         * include/ext/pb_ds/detail/cc_hash_table_map_/
961           iterators_fn_imps.hpp: Same.
962         * include/ext/pb_ds/detail/cc_hash_table_map_/
963           resize_no_store_hash_fn_imps.hpp: Same.
964         * include/ext/pb_ds/detail/cc_hash_table_map_/
965           standard_policies.hpp: Same.
966         * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
967         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
968         * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
969         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
970         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
971         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
972         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
973         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
974         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
975         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
976         * include/ext/pb_ds/detail/pat_trie_/
977           constructors_destructor_fn_imps.hpp: Same.
978         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
979         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
980         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
981         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
982         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
983         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
984         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
985         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
986         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
987         * include/ext/pb_ds/detail/bin_search_tree_/
988           policy_access_fn_imps.hpp: Same.
989         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
990         * include/ext/pb_ds/detail/bin_search_tree_/
991           constructors_destructor_fn_imps.hpp: Same.
992         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
993         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
994         * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
995         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
996         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
997         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
998         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
999         * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
1000         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
1001         * include/ext/pb_ds/detail/bin_search_tree_/
1002           split_join_fn_imps.hpp: Same.
1003         * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
1004         * include/ext/pb_ds/detail/list_update_policy/
1005           sample_update_policy.hpp: Same.
1006         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1007           trace_fn_imps.hpp: Same.
1008         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1009           erase_fn_imps.hpp: Same.
1010         * include/ext/pb_ds/detail/gp_hash_table_map_/
1011           erase_store_hash_fn_imps.hpp: Same.
1012         * include/ext/pb_ds/detail/gp_hash_table_map_/
1013           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
1014         * include/ext/pb_ds/detail/gp_hash_table_map_/
1015           insert_no_store_hash_fn_imps.hpp: Same.
1016         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
1017         * include/ext/pb_ds/detail/gp_hash_table_map_/
1018           policy_access_fn_imps.hpp: Same.
1019         * include/ext/pb_ds/detail/gp_hash_table_map_/
1020           resize_store_hash_fn_imps.hpp: Same.
1021         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
1022         * include/ext/pb_ds/detail/gp_hash_table_map_/
1023           constructor_destructor_store_hash_fn_imps.hpp: Same.
1024         * include/ext/pb_ds/detail/gp_hash_table_map_/
1025           insert_store_hash_fn_imps.hpp: Same.
1026         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
1027         * include/ext/pb_ds/detail/gp_hash_table_map_/
1028           iterator_fn_imps.hpp: Same.
1029         * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
1030         * include/ext/pb_ds/detail/gp_hash_table_map_/
1031           find_no_store_hash_fn_imps.hpp: Same.
1032         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
1033         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
1034         * include/ext/pb_ds/detail/gp_hash_table_map_/
1035           find_store_hash_fn_imps.hpp: Same.
1036         * include/ext/pb_ds/detail/gp_hash_table_map_/
1037           debug_no_store_hash_fn_imps.hpp: Same.
1038         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
1039         * include/ext/pb_ds/detail/gp_hash_table_map_/
1040           constructor_destructor_fn_imps.hpp: Same.
1041         * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
1042         * include/ext/pb_ds/detail/gp_hash_table_map_/
1043           debug_store_hash_fn_imps.hpp: Same.
1044         * include/ext/pb_ds/detail/gp_hash_table_map_/
1045           erase_no_store_hash_fn_imps.hpp: Same.
1046         * include/ext/pb_ds/detail/gp_hash_table_map_/
1047           resize_no_store_hash_fn_imps.hpp: Same.
1048         * include/ext/pb_ds/detail/gp_hash_table_map_/
1049           standard_policies.hpp: Same.
1050         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
1051         * include/ext/pb_ds/detail/types_traits.hpp: Same.
1052         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
1053         * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
1054         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
1055         * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
1056         * include/ext/pb_ds/detail/binary_heap_/
1057           constructors_destructor_fn_imps.hpp: Same.
1058         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
1059         * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
1060         * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
1061         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
1062         * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
1063         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
1064         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
1065         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
1066         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
1067         * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
1068         * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
1069         * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
1070         * include/ext/pb_ds/detail/tree_policy/
1071           sample_tree_node_update.hpp: Same.
1072         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
1073         * include/ext/pb_ds/detail/trie_policy/
1074           sample_trie_node_update.hpp: Same.
1075         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
1076         * include/ext/pb_ds/detail/trie_policy/
1077           prefix_search_node_update_imp.hpp: Same.
1078         * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
1079         * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
1080         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
1081           Adjust for template parameter change, fold into
1082           container_base_dispatch.
1083         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
1084         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
1085         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
1086         * include/ext/pb_ds/detail/pairing_heap_/
1087           constructors_destructor_fn_imps.hpp: Same.
1088         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
1089         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
1090         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
1091         * include/ext/pb_ds/detail/binomial_heap_/
1092           constructors_destructor_fn_imps.hpp: Same.
1093         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
1094         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
1095         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
1096         * include/ext/pb_ds/detail/type_utils.hpp: Same.
1097         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
1098         * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
1099         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1100           policy_access_fn_imps.hpp: Same.
1101         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1102           left_child_next_sibling_heap_.hpp: Same.
1103         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1104           const_iterator.hpp: Same.
1105         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1106           insert_fn_imps.hpp: Same.
1107         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1108           constructors_destructor_fn_imps.hpp: Same.
1109         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1110           debug_fn_imps.hpp: Same.
1111         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1112           node.hpp: Same.
1113         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1114           info_fn_imps.hpp: Same.
1115         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1116           iterators_fn_imps.hpp: Same.
1117         * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
1118         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
1119         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
1120         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
1121         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
1122         * include/ext/pb_ds/detail/thin_heap_/
1123           constructors_destructor_fn_imps.hpp: Same.
1124         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
1125         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
1126         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
1127         * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
1128         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
1129         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
1130         * include/ext/pb_ds/detail/ov_tree_map_/
1131           constructors_destructor_fn_imps.hpp: Same.
1132         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
1133         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
1134         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
1135         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
1136         * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
1137         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
1138         * include/ext/pb_ds/detail/debug_map_base.hpp: Same.
1139         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
1140         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
1141         * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
1142         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
1143         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
1144         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
1145         * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
1146         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
1147         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
1148         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
1149         * include/ext/pb_ds/detail/splay_tree_/
1150           constructors_destructor_fn_imps.hpp: Same.
1151         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
1152         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
1153         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
1154         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
1155         * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
1156         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
1157         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
1158         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
1159         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
1160         * include/ext/pb_ds/detail/list_update_map_/
1161           entry_metadata_base.hpp: Same.
1162         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
1163         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
1164         * include/ext/pb_ds/detail/list_update_map_/
1165           constructor_destructor_fn_imps.hpp: Same.
1166         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
1167         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
1168         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
1169         * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
1170         * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
1171         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
1172         * include/ext/pb_ds/detail/rc_binomial_heap_/
1173           rc_binomial_heap_.hpp: Same.
1174         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
1175         * include/ext/pb_ds/detail/rc_binomial_heap_/
1176           constructors_destructor_fn_imps.hpp: Same.
1177         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
1178         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
1179         * include/ext/pb_ds/detail/rc_binomial_heap_/
1180           split_join_fn_imps.hpp: Same.
1181         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
1182         * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
1183         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
1184         * include/ext/pb_ds/detail/rb_tree_map_/
1185           constructors_destructor_fn_imps.hpp: Same.
1186         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
1187         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
1188         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
1189         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
1190         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
1191         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
1194         Documentation changes.
1195         * include/ext/pb_ds/*: Add doxygen markup.
1196         * doc/doxygen/user.cfg.in: Add details for extracting comments
1197         from pb_ds.
1198         * scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
1199         * scripts/make_graph.py: Move to svg output. Re-format generated tables.
1201         * doc/Makefile.am (stamp-html-copy): New rule.
1202         (stamp-html): Use it to copy non-generated files into html docs.
1203         * doc/Makefile.in: Regenerated.
1205         * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
1206         * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
1207         * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
1208         * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
1210         * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
1211         hash_random_int_erase_mem_usage_test_local.png,
1212         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1213         tree_text_insert_timing_test_pat_trie_local.png ,
1214         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
1215         priority_queue_text_modify_down_timing_test_local.png,
1216         gp_hash_random_int_subscript_timing_test_find_local.png,
1217         text_find_timing_test_hash_local.png,
1218         multimap_text_insert_timing_test_small_s2p_hash_local.png,
1219         multimap_text_insert_timing_test_small_s2p_tree_local.png,
1220         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1221         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1222         multimap_text_insert_timing_test_large_s2p_hash_local.png,
1223         hash_zlob_random_int_find_timing_test_local.png,
1224         multimap_text_insert_timing_test_large_s2p_tree_local.png,
1225         binary_priority_queue_random_int_push_timing_test_local.png,
1226         priority_queue_text_pop_mem_usage_test_local.png,
1227         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1228         tree_split_join_timing_test_local.png,
1229         multimap_text_find_timing_test_small_s2p_hash_local.png,
1230         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
1231         priority_queue_random_int_push_pop_timing_test_local.png,
1232         multimap_text_find_timing_test_small_s2p_tree_local.png,
1233         gp_hash_random_int_subscript_timing_test_insert_local.png,
1234         priority_queue_text_push_timing_test_local.png,
1235         cc_hash_random_int_subscript_timing_test_find_local.png,
1236         tree_text_insert_timing_test_vector_tree_local.png,
1237         multimap_text_find_timing_test_large_s2p_hash_local.png,
1238         pairing_priority_queue_text_push_timing_test_local.png,
1239         tree_order_statistics_timing_test_local.png,
1240         priority_queue_text_push_pop_timing_test_local.png,
1241         text_find_timing_test_tree_like_local.png,
1242         multimap_text_find_timing_test_large_s2p_tree_local.png,
1243         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1244         cc_hash_random_int_subscript_timing_test_insert_local.png,
1245         priority_queue_text_modify_up_timing_test_local.png,
1246         random_int_find_find_timing_test_tree_local.png,
1247         priority_queue_random_int_push_timing_test_local.png,
1248         tree_text_insert_timing_test_node_tree_local.png,
1249         pairing_priority_queue_text_push_pop_timing_test_local.png,
1250         gp_hash_random_int_find_timing_test_local.png,
1251         cc_hash_random_int_find_timing_test_local.png,
1252         priority_queue_text_join_timing_test_local.png: Update local pngs.
1255         Testsuite changes.
1256         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
1257         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
1258         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
1259         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
1260         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
1261         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
1262         New.
1263         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
1264         New.
1265         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
1266         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
1268         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
1270         * testsuite/ext/pb_ds/example/basic_set.cc: Update.
1271         * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
1272         * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
1273         * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
1274         * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
1275         * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
1276         * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
1277         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
1278           Same.
1279         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
1280         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
1281         * testsuite/data/make_graph_test_infos.xml: Same.
1282         * testsuite/util/regression/common_type.hpp: Same.
1283         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
1284         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
1285         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
1286         * testsuite/util/regression/rand/priority_queue/
1287           rand_regression_test.hpp: Same.
1288         * testsuite/util/regression/rand/priority_queue/
1289           container_rand_regression_test.tcc: Same.
1290         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
1291         * testsuite/util/regression/rand/assoc/container_rand_regression_test.h
1292         * testsuite/util/regression/rand/assoc/
1293           container_rand_regression_test.tcc: Same.
1294         * testsuite/util/native_type/native_priority_queue.hpp: Same.
1295         * testsuite/util/native_type/native_multimap.hpp: Same.
1296         * testsuite/util/native_type/native_hash_multimap.hpp: Same.
1297         * testsuite/util/native_type/native_set.hpp: Same.
1298         * testsuite/util/native_type/native_map.hpp: Same.
1299         * testsuite/util/native_type/native_hash_set.hpp: Same.
1300         * testsuite/util/native_type/native_hash_map.hpp: Same.
1301         * testsuite/util/testsuite_containers.h
1302         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
1303         * testsuite/util/common_type/assoc/common_type.hpp: Same.
1304         * testsuite/util/common_type/assoc/string_form.hpp: Same.
1305         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
1306         * testsuite/util/common_type/assoc/detail/
1307           trigger_policy_string_form.hpp: Same.
1308         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
1309         * testsuite/util/common_type/assoc/detail/
1310           size_policy_string_form.hpp: Same.
1311         * testsuite/util/common_type/assoc/detail/
1312           probe_fn_string_form.hpp: Same.
1313         * testsuite/util/common_type/assoc/detail/
1314           tree_supports_order_statistics.hpp: Same.
1315         * testsuite/util/common_type/assoc/detail/
1316           trie_supports_prefix_search.hpp: Same.
1317         * testsuite/util/common_type/assoc/detail/
1318           list_update_policy_string_form.hpp: Same.
1319         * testsuite/util/common_type/assoc/detail/
1320           trie_supports_order_statistics.hpp: Same.
1321         * testsuite/util/common_type/assoc/native_set.hpp: Same.
1322         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
1323         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
1324         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
1326 2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
1328         * include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
1329         (istreambuf_iterator<>::istreambuf_iterator(const
1330         istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
1331         in C++0x mode.
1333 2011-05-23  Jason Merrill  <jason@redhat.com>
1335         * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
1337 2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1339         * testsuite/20_util/bind/cv_quals_2.cc: New.
1341 2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
1343         PR libstdc++/49058
1344         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
1345         operator()(_Args&&...)): Don't cv qualify _Functor directly
1346         in the default template argument, SFINAE doesn't apply when
1347         the functor has no arguments.
1348         * testsuite/20_util/bind/49058_1.cc: New.
1349         * testsuite/20_util/bind/49058_2.cc: Likewise.
1351 2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
1353         * include/bits/unique_ptr.h: Use noexcept per the FDIS.
1355 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
1357         * testsuite/21_strings/basic_string/requirements/exception/
1358         propagation_consistent.cc: Fix vs POD-ness of value_type.
1359         * testsuite/21_strings/basic_string/requirements/exception/
1360         basic.cc: Likewise.
1361         * testsuite/ext/vstring/requirements/exception/
1362         propagation_consistent.cc: Likewise.
1363         * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
1365 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
1367         * include/bits/char_traits.h: Use noexcept throughout.
1368         * include/std/typeindex: Likewise.
1370         * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
1371         noexcept; adjust callers.
1372         * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
1373         * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
1374         * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
1375         * testsuite/20_util/pair/noexcept_swap.cc: Likewise.
1376         * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
1377         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1378         line numbers.
1380 2011-05-20  Jason Merrill  <jason@redhat.com>
1382         * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
1383         functions from dependent bases.
1384         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
1385         * include/ext/pb_ds/detail/rb_tree_map_/
1386         split_join_fn_imps.hpp: Likewise.
1387         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
1388         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
1389         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
1390         * include/ext/pb_ds/detail/splay_tree_/
1391         split_join_fn_imps.hpp: Likewise.
1392         * include/ext/pb_ds/detail/tree_policy/
1393         order_statistics_imp.hpp: Likewise.
1394         * include/ext/pb_ds/detail/trie_policy/
1395         prefix_search_node_update_imp.hpp: Likewise.
1396         * include/ext/rc_string_base.h: Likewise.
1397         * include/ext/rope: Likewise.
1398         * include/ext/ropeimpl.h: Likewise.
1399         * testsuite/util/exception/safety.h: Likewise.
1400         * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
1401         * testsuite/util/testsuite_io.h: Likewise.
1402         * include/std/functional: Declare mem_fn earlier.
1403         * include/tr1/functional: Likewise.
1404         * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.
1406 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
1408         * include/std/tuple (tuple_element<__i, const _Tp>,
1409         tuple_element<__i, volatile _Tp>, tuple_element<__i,
1410         const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
1411         tuple_size<const volatile _Tp>): Add.
1412         * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
1413         * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
1414         * testsuite/20_util/tuple/cv_tuple_size.cc: New.
1415         * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
1416         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
1417         line number.
1419 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
1421         * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
1422         noexcept.
1423         (__get_helper): Likewise.
1424         (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
1425         * include/bits/move.h (swap): Likewise.
1426         * include/bits/algorithmfwd.h (swap): Adjust.
1427         * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
1428         * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
1429         mode, prefer delete to access control to make the type not copy
1430         assignable.
1431         * testsuite/util/testsuite_tr1.h: Add test classes.
1432         * testsuite/20_util/tuple/noexcept_swap.cc: New.
1433         * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
1434         * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
1435         delete to access control.
1436         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
1437         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1438         line numbers.
1440 2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
1442         * testsuite/util/testsuite_tr1.h: Add test classes.
1443         * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
1445 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
1447         * include/std/type_traits (is_assignable, is_copy_assignable,
1448         is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
1449         is_nothrow_move_assignable): Add; minor tweaks elsewhere.
1450         (has_nothrow_copy_assign): Remove.
1451         * testsuite/util/testsuite_tr1.h: Add test classes.
1452         * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
1453         * testsuite/20_util/is_assignable/requirements/
1454         explicit_instantiation.cc: Likewise.
1455         * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
1456         * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
1457         Likewise.
1458         * testsuite/20_util/is_nothrow_assignable/requirements/
1459         explicit_instantiation.cc: Likewise.
1460         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
1461         * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
1462         Likewise.
1463         * testsuite/20_util/is_move_assignable/requirements/
1464         explicit_instantiation.cc: Likewise.
1465         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
1466         * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
1467         Likewise.
1468         * testsuite/20_util/is_copy_assignable/requirements/
1469         explicit_instantiation.cc: Likewise.
1470         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
1471         * testsuite/20_util/is_nothrow_move_assignable/requirements/
1472         typedefs.cc: Likewise.
1473         * testsuite/20_util/is_nothrow_move_assignable/requirements/
1474         explicit_instantiation.cc: Likewise.
1475         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
1476         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
1477         typedefs.cc: Likewise.
1478         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
1479         explicit_instantiation.cc: Likewise.
1480         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1481         dg-error line numbers.
1482         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1483         Likewise.
1484         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1486 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1488         * include/bits/shared_ptr_base.h: Use noexcept. Define special member
1489         functions as defaulted/deleted.
1490         * include/bits/shared_ptr.h: Use noexcept.
1491         * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
1492         * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
1494 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1496         * doc/xml/manual/bitmap_allocator.xml: Fix typos.
1498 2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
1500         * libsupc++/initializer_list: Use noexcept specifier.
1501         (initializer_list<>::size, begin, end): Qualify as const.
1502         * include/bits/move.h (__addressof, forward, move, addressof): Specify
1503         as noexcept.
1504         * include/std/bitset: Use noexcept specifier throughout.
1505         * include/debug/bitset: Update.
1506         * include/profile/bitset: Likewise.
1508 2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
1510         * include/std/tuple: Use noexcept where appropriate.
1511         (tuple<>::swap): Rework implementation.
1512         (_Head_base<>::_M_swap_impl): Remove.
1513         (get(std::tuple<>&&)): Add.
1514         * testsuite/20_util/tuple/element_access/get2.cc: New.
1515         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
1516         line number.
1518 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
1520         * include/std/utility: Simplify the last commit, the whole
1521         std::get code is C++0x only.
1523 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
1525         * include/std/utility (get(std::pair<>&&)): Add.
1526         * include/bits/stl_pair.h (pair::swap(pair&),
1527         swap(pair<>&, pair<>&)): Use noexcept.
1528         * include/bits/random.h (discard_block_engine<>::base,
1529         independent_bits_engine<>::base, shuffle_order_engine<>::base,
1530         random_device::entropy): Use noexcept.
1531         * include/std/array: Use noexcept where appropriate.
1532         (get(array<>&&)): Add.
1533         * testsuite/23_containers/array/requirements/get.cc: New.
1534         * testsuite/20_util/pair/get.cc: Likewise.
1535         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
1536         line number.
1538 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
1540         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
1541         Add.
1542         * include/std/limits: Use the latter everywhere.
1543         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
1544         macro usages, the specializations exist only in C++0x mode.
1545         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
1546         line number.
1548 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
1550         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
1551         dg-require-cmath.
1552         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
1554 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
1556         * include/ext/pb_ds/detail/resize_policy/
1557         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
1558         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
1559         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
1560         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
1561         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
1562         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
1563         * include/ext/pb_ds/detail/debug_map_base.hpp,
1564         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
1565         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
1566         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
1567         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
1568         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
1569         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
1570         macro definitions move...
1571         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
1572         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
1573         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
1574         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
1575         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
1576         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
1577         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
1578         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
1579         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
1580         ...here.
1582 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
1584         PR libstdc++/48933
1585         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
1586         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
1587         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
1588         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
1589         scalbn, tgamma, trunc): Use __enable_if on the return type.
1590         * include/tr1/cmath: Likewise.
1591         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
1592         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
1594 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
1596         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
1597         (_GLICXX_DEBUG_VERIFY): Use latter.
1598         * include/ext/pb_ds/detail/resize_policy/
1599         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
1600         containing the original assert call.
1601         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
1602         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
1603         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
1604         split_join_fn_imps.hpp: Likewise.
1605         * include/ext/pb_ds/detail/cc_hash_table_map_/
1606         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
1607         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
1608         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
1609         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
1610         erase_no_store_hash_fn_imps.hpp: Likewise.
1611         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
1612         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
1613         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
1614         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
1615         Likewise.
1616         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
1617         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
1618         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
1619         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
1620         Likewise.
1621         * include/ext/pb_ds/detail/gp_hash_table_map_/
1622         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
1623         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
1624         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
1625         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
1626         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
1627         Likewise.
1628         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
1629         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
1630         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
1631         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
1632         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
1633         find_fn_imps.hpp, insert_fn_imps.hpp,
1634         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
1635         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
1636         * include/ext/pb_ds/detail/binomial_heap_/
1637         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
1638         binomial_heap_.hpp: Likewise.
1639         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1640         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
1641         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
1642         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
1643         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
1644         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
1645         split_join_fn_imps.hpp: Likewise.
1646         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
1647         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
1648         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
1649         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
1650         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
1651         find_fn_imps.hpp, insert_fn_imps.hpp,
1652         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
1653         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
1654         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
1655         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
1656         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
1657         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
1658         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
1659         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
1660         split_join_fn_imps.hpp: Likewise.
1661         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
1662         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
1663         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
1664         * include/ext/pb_ds/hash_policy.hpp: Likewise.
1666 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
1668         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
1670 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
1672         PR libstdc++/47913 (again)
1673         * include/std/ratio (ratio_add, ratio_less): Rewrite.
1674         * testsuite/20_util/ratio/operations/47913.cc: Extend.
1675         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
1676         line numbers.
1677         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
1679 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
1681         PR libstdc++/48848
1682         * include/std/valarray (valarray<>::valarray(valarray&&),
1683         valarray<>::operator=(valarray&&), valarray<>::swap): Add.
1684         * doc/xml/manual/status_cxx200x.xml: Update.
1685         * testsuite/26_numerics/valarray/moveable.cc: New.
1686         * testsuite/26_numerics/valarray/swap.cc: Likewise.
1688 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
1690         PR libstdc++/48750
1691         * include/parallel/multiway_merge.h: Run _ValueType destructors.
1692         * include/parallel/multiway_mergesort.h: Likewise.
1693         * include/parallel/quicksort.h: Likewise.
1694         * include/parallel/random_shuffle.h: Likewise.
1695         * include/parallel/partial_sum.h: Likewise.
1696         * include/parallel/losertree.h: Run destructors; minor tweaks.
1697         * include/parallel/par_loop.h: Run destructors, fix memory
1698         allocations and deallocations.
1699         * testsuite/26_numerics/accumulate/48750.cc: New.
1701         * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
1702         parallel-mode to avoid spurious multiple errors.
1704 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
1706         * include/std/functional (bind): Remove from overload set when first
1707         argument type might be a socket file descriptor.
1708         * testsuite/20_util/bind/socket.cc: New.
1710 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
1712         PR libstdc++/48848
1713         * doc/xml/manual/status_cxx200x.xml: Update valarray status.
1714         * doc/html/*: Regenerate.
1716 2011-05-02  Ollie Wild  <aaw@google.com>
1718         * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
1719         Fix unqualified lookup.
1720         (__sso_string_base<>::_M_assign): Likewise.
1721         (__sso_string_base<>::_M_reserve): Likewise.
1722         (__sso_string_base<>::_M_mutate): Likewise.
1723         (__sso_string_base<>::_M_erase): Likewise.
1724         * include/ext/vstring.h (__versa_string<>::replace): Likewise.
1725         (__versa_string<>::compare): Likewise.
1726         * include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
1728 2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
1730         * doc/xml/manual/status_cxx200x.xml: Update to reflect current status
1731         and FDIS content.
1732         * doc/xml/manual/documentation_hacking.xml: Fix typo.
1733         * doc/html/*: Regenerate.
1735 2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>
1737         * include/std/type_traits (__is_default_constructible_atom,
1738         __is_default_constructible_safe<, true>,
1739         __is_direct_constructible_new_safe,
1740         __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
1741         __is_direct_constructible_ref_cast, __is_direct_constructible,
1742         __is_nary_constructible): Simplify; add comments throughout.
1744 2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
1746         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1747         Adjust dg-error line numbers.
1748         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1749         Likewise.
1750         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1752 2011-04-30  Doug Kwan  <dougkwan@google.com>
1754         * include/Makefile.am (install-freestanding-headers): Also install
1755         cxxabi_tweaks.h.
1756         * include/Makefile.in: Regenerate.
1758 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
1760         PR libstdc++/48760
1761         * include/std/complex (complex<float>::complex(float, float),
1762         complex<double>::complex(double, double),
1763         complex<long double>::complex(long double, long double)): Use
1764         list-initialization in C++0x mode, initialize in the body in
1765         C++03 mode.
1766         * testsuite/26_numerics/complex/cons/48760.cc: New.
1767         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
1769 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
1771         * include/std/bitset (_Base_bitset(unsigned long long)): Minor
1772         tweak, remove redundant round braces.
1774 2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
1776         * include/bits/move.h (move_if_noexcept): Add.
1777         * testsuite/20_util/move_if_noexcept/requirements/
1778         explicit_instantiation.cc: New.
1779         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
1781 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
1783         * include/std/type_traits (struct underlying_type): Add.
1784         * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
1785         * testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
1786         Likewise.
1787         * testsuite/20_util/underlying_type/requirements/
1788         explicit_instantiation.cc: Likewise.
1789         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1790         line number.
1792 2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
1794         * include/parallel/multiway_merge.h: Uglify equally_split
1795         and equally_split_point throughout.
1796         * include/parallel/par_loop.h: Likewise.
1797         * include/parallel/equally_split.h: Likewise.
1798         * include/parallel/set_operations.h: Likewise.
1799         * include/parallel/unique_copy.h: Likewise.
1800         * include/parallel/multiway_mergesort.h: Likewise.
1801         * include/parallel/search.h: Likewise.
1802         * include/parallel/partial_sum.h: Likewise.
1803         * include/parallel/find.h: Likewise.
1805 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
1807         * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
1808         documentation.  Expand link text.
1810 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
1812         * libsupc++/cxxabi.h: Adjust link to FAQ entry.
1814 2011-04-22  François Dumont  <francois.cppdevs@free.fr>
1816         * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
1817         unused compilation result thanks to /dev/null.
1818         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode,
1819         check_v3_target_profile_mode, check_v3_target_normal_mode,
1820         check_v3_target_cstdint, check_v3_target_cmath,
1821         check_v3_target_atomic_builtins, check_v3_target_gthreads,
1822         check_v3_target_nanosleep, check_v3_target_sched_yield,
1823         check_v3_target_string_conversions, check_v3_target_swprintf,
1824         check_v3_target_binary_io): Use simple preprocessing rather than
1825         compilation. Discard unused preprocessing result thanks to /dev/null.
1827 2011-04-20  Jim Meyering  <meyering@redhat.com>
1829         * libsupc++/del_opnt.cc (operator delete): Remove useless
1830         if-before-free.
1832 2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
1834         PR libstdc++/48521
1835         * include/std/type_traits (result_of): Handle pointer to member.
1836         * include/std/functional (__invoke): Likewise.
1837         (_Function_to_function_pointer): Remove.
1838         (_Reference_wrapper_base): Provide nested types independent of
1839         unary_function and binary_function.
1840         (reference_wrapper::operator()): DR 2017.
1841         (ref(const A&&), cref(const A&&): Define as deleted.
1842         * include/std/future (async): Simplify SFINAE and use result_of to
1843         support pointer to member.
1844         * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
1845         member.
1846         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
1847         * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
1848         instead of derivation from unary_function and binary_function.
1849         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
1850         * testsuite/20_util/reference_wrapper/invoke-2.cc: New.
1851         * testsuite/20_util/reference_wrapper/ref_neg.c: New.
1852         * testsuite/20_util/reference_wrapper/typedefs-3.c: New.
1854 2011-04-19  Hans-Peter Nilsson  <hp@axis.com>
1856         PR testsuite/48675
1857         * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
1858         this part if SAMPLES < 100000.
1860 2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
1862         * include/std/type_traits (is_nothrow_default_constructible,
1863         is_nothrow_copy_constructible, is_nothrow_move_constructible,
1864         is_copy_constructible, is_move_constructible): Add.
1865         (has_nothrow_default_constructor, has_nothrow_copy_constructor):
1866         Remove.
1867         (is_nothrow_constructible): Adjust.
1869         * testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
1870         ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
1871         ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
1872         NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.
1874         * testsuite/20_util/has_nothrow_default_constructor: Remove.
1875         * testsuite/20_util/has_nothrow_copy_constructor: Likewise.
1877         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
1878         * testsuite/20_util/is_nothrow_move_constructible/requirements/
1879         typedefs.cc: Likewise.
1880         * testsuite/20_util/is_nothrow_move_constructible/requirements/
1881         explicit_instantiation.cc: Likewise.
1882         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
1883         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
1884         typedefs.cc: Likewise.
1885         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
1886         explicit_instantiation.cc: Likewise.
1887         * testsuite/20_util/is_nothrow_default_constructible/value.cc:
1888         Likewise.
1889         * testsuite/20_util/is_nothrow_default_constructible/requirements/
1890         typedefs.cc: Likewise.
1891         * testsuite/20_util/is_nothrow_default_constructible/requirements/
1892         explicit_instantiation.cc: Likewise.
1893         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
1894         * testsuite/20_util/is_move_constructible/requirements/typedefs.cc:
1895         Likewise.
1896         * testsuite/20_util/is_move_constructible/requirements/
1897         explicit_instantiation.cc: Likewise.
1898         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
1899         * testsuite/20_util/is_copy_constructible/requirements/typedefs.cc:
1900         Likewise.
1901         * testsuite/20_util/is_copy_constructible/requirements/
1902         explicit_instantiation.cc: Likewise.
1904         * testsuite/20_util/is_default_constructible/value.cc: Add tests.
1905         * testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.
1907         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1908         Adjust dg-error line numbers.
1909         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1910         Likewise.
1911         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1913 2011-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
1915         * testsuite/25_algorithms/partition/moveable.cc: Actually run
1916         it in parallel-mode for check-parallel.
1918 2011-04-17  Daniel Krugler  <daniel.kruegler@googlemail.com>
1919             Paolo Carlini  <paolo.carlini@oracle.com>
1921         PR libstdc++/48635 (again)
1922         * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&),
1923         unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&),
1924         unique_ptr<>::operator=(unique_ptr<>&&),
1925         unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not
1926         forward<_Dp>, to forward the deleter.
1927         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: New.
1929 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
1930             Paolo Carlini  <paolo.carlini@oracle.com>
1932         PR libstdc++/48631
1933         * include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted
1934         function call operator.
1935         * testsuite/20_util/default_delete/48631_neg.cc: New.
1936         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
1937         line numbers.
1939 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
1940             Paolo Carlini  <paolo.carlini@oracle.com>
1942         PR libstdc++/48635
1943         * include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&),
1944         unique_ptr<>::operator=(unique_ptr<>&&),
1945         unique_ptr<_Tp[],>::operator=(unique_ptr&&),
1946         unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter
1947         instead of moving it.
1948         * testsuite/20_util/unique_ptr/assign/48635.cc: New.
1950 2011-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1952         * scripts/extract_symvers.pl: Handle NOTY.
1954 2011-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
1956         * include/std/istream: Fix comments in the light of DR60 + N3168.
1958 2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
1959             Paolo Carlini  <paolo.carlini@oracle.com>
1961         PR libstdc++/48526
1962         * include/std/type_traits (struct is_constructible): Re-implement,
1963         according to n3290.
1964         (struct is_default_constructible): Add.
1965         (struct is_destructible): Likewise.
1966         (struct __and_, __or_, __not_): Add and use throughout; reorder some
1967         facilities, other minor tweaks.
1968         * testsuite/util/testsuite_tr1.h: Add test types.
1969         * testsuite/20_util/is_constructible/value-2.cc: New.
1970         * testsuite/20_util/is_default_constructible/value.cc: Likewise.
1971         * testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
1972         Likewise.
1973         * testsuite/20_util/is_default_constructible/requirements/
1974         explicit_instantiation.cc: Likewise.
1975         * testsuite/20_util/is_destructible/value.cc: Likewise.
1976         * testsuite/20_util/is_destructible/requirements/typedefs.cc:
1977         Likewise.
1978         * testsuite/20_util/is_destructible/requirements/
1979         explicit_instantiation.cc: Likewise.
1980         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1981         dg-error line numbers.
1982         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1983         Likewise.
1984         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1985         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
1987 2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
1989         * testsuite/20_util/is_function/value.cc: Add, adapted from the tr
1990         testsuite.
1991         * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
1992         * testsuite/20_util/is_function/requirements/
1993         explicit_instantiation.cc: Likewise.
1994         * testsuite/20_util/is_function/24808.cc: Likewise.
1995         * testsuite/20_util/is_function/35637.cc: Likewise.
1996         * testsuite/20_util/is_object/value.cc: Likewise.
1997         * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
1998         * testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
1999         : Likewise.
2000         * testsuite/20_util/is_object/24808.cc: Likewise.
2001         * testsuite/20_util/is_compound/value.cc: Likewise.
2002         * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
2003         * testsuite/20_util/is_compound/requirements/
2004         explicit_instantiation.cc: Likewise.
2005         * testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
2006         * testsuite/20_util/is_member_object_pointer/requirements/
2007         typedefs.cc: Likewise.
2008         * testsuite/20_util/is_member_object_pointer/requirements/
2009         explicit_instantiation.cc: Likewise.
2010         * testsuite/20_util/is_fundamental/value.cc: Likewise.
2011         * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
2012         * testsuite/20_util/is_fundamental/requirements/
2013         explicit_instantiation.cc: Likewise.
2014         * testsuite/20_util/is_member_pointer/value.cc: Likewise.
2015         * testsuite/20_util/is_member_pointer/requirements/typedefs.cc:
2016         Likewise.
2017         * testsuite/20_util/is_member_pointer/requirements/
2018         explicit_instantiation.cc: Likewise.
2019         * testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
2020         * testsuite/20_util/is_member_function_pointer/
2021         requirements/typedefs.cc: Likewise.
2022         * testsuite/20_util/is_member_function_pointer/requirements/
2023         explicit_instantiation.cc: Likewise.
2025         * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
2026         Copyright years.
2028 2011-04-12  Takaya Saito  <gintensubaru@gmail.com>
2030         PR libstdc++/48476
2031         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
2032         _Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
2033         (_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
2034         * testsuite/20_util/tuple/cons/48476.cc: New.
2035         * testsuite/20_util/tuple/48476.cc: Likewise.
2036         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
2038 2011-04-12  Allan McRae  <allan@archlinux.org>
2040         PR libstdc++/48566
2041         * testsuite/tr1/6_containers/unordered_map/requirements/
2042         iterator_null_neg.cc: Include <cstddef>.
2043         * testsuite/tr1/6_containers/unordered_set/requirements/
2044         iterator_null_neg.cc: Likewise.
2045         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
2046         <cstring>.
2047         * testsuite/util/testsuite_common_types.h: Include <limits>.
2048         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
2049         Adjust dg-error line numbers.
2050         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
2051         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
2052         Likewise.
2053         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
2054         Likewise.
2055         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
2056         Likewise.
2057         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
2058         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
2060 2011-04-11  Jason Merrill  <jason@redhat.com>
2062         * testsuite/20_util/is_convertible/value.cc: Adjust.
2064 2011-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
2066         * testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
2067         it in parallel-mode for check-parallel.
2068         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
2069         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
2070         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
2071         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
2072         Likewise.
2073         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
2074         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
2075         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
2077         * testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
2078         the tests based on std::lexicographical_compare for check-parallel.
2079         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
2081 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
2083         PR libstdc++/48541
2084         * include/std/functional (_Base_manager::_M_get_pointer): Use
2085         addressof.
2086         * testsuite/20_util/function/48541.cc: New.
2088 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
2090         PR libstdc++/48465
2091         * configure.ac (libtool_VERSION): Bump library version to 6:16:0.
2092         * configure: Regenerate.
2093         * config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols.
2094         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
2096 2011-04-06  Jeffrey Yasskin  <jyasskin@google.com>
2098         * include/ext/algorithm (is_sorted): In C++0x mode import from
2099         namespace std.
2100         * include/ext/numeric (iota): In C++0x mode import from
2101         namespace std.
2102         * testsuite/ext/is_sorted/cxx0x.cc: New.
2103         * testsuite/ext/iota/cxx0x.cc: New.
2105 2011-04-02  Jonathan Wakely  <redi@gcc.gnu.org>
2107         PR libstdc++/48398
2108         * include/bits/unique_ptr.h (__tuple_type): Store pointer type.
2109         * testsuite/20_util/unique_ptr/modifiers/48398.cc: New.
2110         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove
2111         unused parameter name.
2113 2011-03-31  Jeffrey Yasskin  <jyasskin@google.com>
2115         * libsupc++/exception_ptr.h: Forward-declare std::type_info.
2116         * libsupc++/nested_exception.h (__throw_with_nested): Remove a
2117         redundant default argument from std::__throw_with_nested.
2119 2011-03-31  Paolo Carlini  <paolo.carlini@oracle.com>
2121         PR libstdc++/48382
2122         * src/ctype.cc: Do not include <bits/ctype_noninline.h>.
2123         * src/Makefile.am: Add ctype_configure_char.cc to host_sources.
2124         * src/Makefile.in: Regenerate.
2125         * include/Makefile.am: Remove ctype_noninline.h from host_headers.
2126         * include/Makefile.in: Regenerate.
2127         * doc/xml/manual/internals.xml: Update.
2128         * config/os/newlib/ctype_noninline.h: Fixup and rename to...
2129         * config/os/newlib/ctype_configure_char.cc: ... this.
2130         * config/os/aix/ctype_noninline.h: Likewise.
2131         * config/os/aix/ctype_configure_char.cc: Likewise.
2132         * config/os/vxworks/ctype_noninline.h: Likewise.
2133         * config/os/vxworks/ctype_configure_char.cc
2134         * config/os/hpux/ctype_noninline.h: Likewise.
2135         * config/os/hpux/ctype_configure_char.cc: Likewise.
2136         * config/os/gnu-linux/ctype_noninline.h: Likewise.
2137         * config/os/gnu-linux/ctype_configure_char.cc: Likewise.
2138         * config/os/mingw32/ctype_noninline.h: Likewise.
2139         * config/os/mingw32/ctype_configure_char.cc: Likewise.
2140         * config/os/tpf/ctype_noninline.h: Likewise.
2141         * config/os/tpf/ctype_configure_char.cc: Likewise.
2142         * config/os/uclibc/ctype_noninline.h: Likewise.
2143         * config/os/uclibc/ctype_configure_char.cc: Likewise.
2144         * config/os/bionic/ctype_noninline.h: Likewise.
2145         * config/os/bionic/ctype_configure_char.cc: Likewise.
2146         * config/os/djgpp/ctype_noninline.h: Likewise.
2147         * config/os/djgpp/ctype_configure_char.cc: Likewise.
2148         * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
2149         * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
2150         * config/os/bsd/netbsd/ctype_noninline.h: Likewise.
2151         * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
2152         * config/os/bsd/darwin/ctype_noninline.h: Likewise.
2153         * config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
2154         * config/os/bsd/freebsd/ctype_noninline.h: Likewise.
2155         * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
2156         * config/os/irix/irix6.5/ctype_noninline.h: Likewise.
2157         * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
2158         * config/os/generic/ctype_noninline.h: Likewise.
2159         * config/os/generic/ctype_configure_char.cc: Likewise.
2160         * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
2161         * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.
2163 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
2165         * include/std/future (future::share): Add.
2166         (packaged_task::result_type): Remove as per LWG 2030.
2167         (packaged_task::packaged_task): Remove redundant constructors, as per
2168         LWG 1514.
2169         * testsuite/30_threads/future/members/share.cc: New.
2170         * testsuite/30_threads/packaged_task/requirements/typedefs.cc: Remove.
2172 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
2174         * testsuite/28_regex/match_results/ctors/char/default.cc: Do not call
2175         members which require a fully established result state.
2176         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
2178 2011-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
2180         * include/bits/random.h (negative_binomial_distribution<>::
2181         negative_binomial_distribution(_IntType, double),
2182         negative_binomial_distribution<>::
2183         negative_binomial_distribution(const param_type&)): Tweak
2184         construction of _M_gd.
2185         * include/bits/random.tcc (negative_binomial_distribution<>::
2186         operator()): Adjust.
2188 2011-03-24  Paolo Carlini  <paolo.carlini@oracle.com>
2190         * include/bits/random.h (negative_binomial_distribution<>::
2191         negative_binomial_distribution(_IntType, double),
2192         negative_binomial_distribution<>::
2193         negative_binomial_distribution(const param_type&)): Fix
2194         construction of _M_gd.
2195         * include/bits/random.tcc (negative_binomial_distribution<>::
2196         operator()): Fix computation, per Leger's algorithm.
2197         * testsuite/util/testsuite_random.h (discrete_pdf,
2198         negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New.
2199         (binomial_pdf): Swap last two parameters.
2200         * testsuite/26_numerics/random/discrete_distribution/
2201         operators/values.cc: New.
2202         * testsuite/26_numerics/random/negative_binomial_distribution/
2203         operators/values.cc: Likewise.
2204         * testsuite/26_numerics/random/poisson_distribution/
2205         operators/values.cc: Likewise.
2206         * testsuite/26_numerics/random/uniform_int_distribution/
2207         operators/values.cc: Likewise.
2208         * testsuite/26_numerics/random/binomial_distribution/
2209         operators/values.cc: Adjust.
2211 2011-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2213         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
2214         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
2215         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2216         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2217         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2219 2011-03-23  Matthias Klose  <doko@ubuntu.com>
2221         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Regenerated.
2223 2011-03-23  Uros Bizjak  <ubizjak@gmail.com>
2225         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
2227 2011-03-22  Joseph Myers  <joseph@codesourcery.com>
2229         * configure.ac: Don't handle powerpc*-*-gnu*.
2230         * configure: Regenerate.
2232 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
2234         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Tweak
2235         Copyright years.
2236         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
2237         Likewise.
2239 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
2241         * include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add,
2242         per DR 1401.
2243         (operator==, operator!=, operator<): Fix per the letter of DR 1401.
2244         * include/bits/shared_ptr_base.h: Likewise for __shared_ptr.
2245         * include/bits/unique_ptr.h (operator==, operator!=, operator<,
2246         operator<=, operator>, operator>=): Fix per the letter of DR 1401.
2247         * testsuite/20_util/shared_ptr/comparison/dr1401.cc: New.
2248         * testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
2249         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
2251 2011-03-22  Jakub Jelinek  <jakub@redhat.com>
2253         * config/abi/pre/gnu.ver (GLIBCXX_3.4.15): Export _ZNSsC2EOSs
2254         and _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_.
2255         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerated.
2256         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
2257         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
2258         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
2259         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
2260         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
2261         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
2262         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
2263         Likewise.
2264         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2265         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2266         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2267         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2268         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
2269         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
2270         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: New test.
2271         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: New
2272         test.
2274 2011-03-21  Jack Howarth  <howarth@bromo.med.uc.edu>
2276         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune "could not
2277         create compact unwind for" warnings.
2279 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
2281         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
2282         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2283         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
2284         Likewise.
2285         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
2286         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
2287         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
2288         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
2289         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
2290         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
2291         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
2292         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2293         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2295         * testsuite/util/testsuite_abi.cc (check_version): Set incompatible
2296         even when adding symbols to CXXABI_1.3, GLIBCXX_LDBL_3.4 and
2297         CXXABI_LDBL_1.3 versions.
2299 2011-03-21  Benjamin Kosnik  <bkoz@redhat.com>
2301         * config/abi/pre/gnu.ver: Remove typeinfo name exports for C++0x types.
2303 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
2305         * config/abi/pre/gnu.ver (CXXABI_1.3): Don't export _ZT[IS][PK]*[no].
2306         (CXXABI_1.3.5): Export _ZTI[PK]*[no].
2308 2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2310         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
2311         sparc*-sun-solaris2.10 && lp64.
2313 2011-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
2315         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename
2316         to check_v3_target_cmath.
2317         * testsuite/lib/dg-options.exp (dg-require-c99_math): Rename
2318         to dg-require-cmath.
2319         * testsuite/26_numerics/random/binomial_distribution/
2320         operators/values.cc: Adjust.
2322 2011-03-18  Diego Novillo  <dnovillo@google.com>
2324         * testsuite/decimal/mixed-mode-arith_neg.cc: Rename from
2325         mixed-mode_neg.cc
2326         * testsuite/decimal/mixed-mode-cmp_neg.cc: Factor out of
2327         mixed-mode-arith_neg.cc
2329 2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
2331         * testsuite/util/testsuite_random.h: New.
2332         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Add.
2333         * testsuite/lib/dg-options.exp (dg-require-c99_math): Likewise.
2334         * testsuite/26_numerics/random/bernoulli_distribution/
2335         operators/values.cc: New.
2336         * testsuite/26_numerics/random/binomial_distribution/
2337         operators/values.cc: Likewise.
2338         * testsuite/26_numerics/random/geometric_distribution/
2339         operators/values.cc: Likewise.
2341 2011-03-16  Benjamin Kosnik  <bkoz@redhat.com>
2343         * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes.
2344         * testsuite/19_diagnostics/stdexcept.cc: New.
2346 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
2348         * include/std/thread: Revert.
2349         * src/thread.cc: Same.
2350         * config/abi/pre/gnu.ver: Same.
2352 2011-03-15  Doug Kwan  <dougkwan@google.com>
2354         PR libstdc++/48123
2355         * include/Makefile.am (install-freestanding-headers): Install
2356         cpu_defines.h
2357         * include/Makefile.in: Regenerate.
2359 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
2361         * config/abi/pre/gnu.ver: Make nested_exception exports super clear.
2362         Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15.
2364 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
2366         PR libstdc++/48130
2367         * src/future.cc: Guard definitions.
2368         * libsupc++/nested_exception.cc: Same.
2370 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
2372         * src/Makefile.am: Add functional.cc, shared_ptr.cc.
2373         * src/Makefile.in: Regenerate.
2374         * libsupc++/Makefile.am: Add nested_exception.cc.
2375         * libsupc++/Makefile.in: Regenerate.
2376         * src/system_error.cc: Add ctor and dtor definitions for error_category.
2377         * src/functional.cc: New. Add dtor definition for bad_function_call.
2378         * src/stdexcept.cc: Add dtor definitions for domain_error,
2379         invalid_argument, length_error, out_of_range, range_error,
2380         overflow_error, underflow_error.
2381         * src/future.cc: Add dtor definition for __future_base::_Result_base.
2382         * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr.
2383         * src/thread.cc: Add dtor for thread::_Impl_base.
2384         * include/std/system_error: Adjust.
2385         * include/std/stdexcept: Same.
2386         * include/std/future: Same.
2387         * include/std/functional: Same.
2388         * include/std/thread: Same.
2389         * include/bits/shared_ptr_base.h: Same.
2390         * libsupc++/nested_exception.cc: New. Add dtor for nested_exception.
2391         * libsupc++/nested_exception.h: Adjust.
2392         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
2393         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
2394         * config/abi/pre/gnu.ver: Add new exports.
2396 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
2398         * include/bits/regex_compiler.h: Nest namespace versioning.
2399         * include/bits/regex_grep_matcher.tcc: Same.
2400         * include/bits/regex_grep_matcher.h: Same.
2401         * include/bits/regex_cursor.h: Same.
2402         * include/bits/regex_nfa.h: Same.
2403         * include/bits/regex_nfa.tcc: Same.
2405         * include/bits/regex_grep_matcher.h: Version forward declarations.
2406         * include/bits/c++config: Add namespace association for __regex.
2407         * include/bits/regex.h: Make sub_match consistent.
2409 2011-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2411         * doc/xml/manual/abi.xml: Replace docs.sun.com URLs by their OTN
2412         equivalents.
2413         * doc/html/manual/abi.html: Regenerate.
2415 2011-03-14  Tom Tromey  <tromey@redhat.com>
2417         * python/libstdcxx/v6/printers.py (_use_gdb_pp): New global.
2418         Try to import `gdb.printing' module.
2419         (UniquePointerPrinter.__init__): Add 'typename' argument.
2420         (StdSlistPrinter.__init__): Likewise.
2421         (StdSlistIteratorPrinter.__init__): Likewise.
2422         (StdVectorIteratorPrinter.__init__): Likewise.
2423         (StdRbtreeIteratorPrinter.__init__): Likewise.
2424         (StdDebugIteratorPrinter.__init__): Likewise.
2425         (StdDequeIteratorPrinter.__init__): Likewise.
2426         (StdStringPrinter.__init__): Likewise.
2427         (RxPrinter, Printer): New class.
2428         (libstdcxx_printer): New global.
2429         (register_libstdcxx_printers): Rewrite.
2430         (build_libstdcxx_dictionary): Rewrite.
2431         (pretty_printers_dict): Remove.
2433 2011-03-14  Andrey Zholos  <aaz@althenia.net>
2435         PR libstdc++/48114
2436         * include/bits/random.h (geometric_distribution): Correct formula
2437         in comment, per C++0x.
2438         (geometric_distribution<>::param_type::param_type(double)): Fix check.
2439         (geometric_distribution<>::param_type::_M_initialize):
2440         Store log(1 - p).
2441         * include/bits/random.tcc (geometric_distribution<>::operator()):
2442         Fix computation.
2443         (binomial_distribution<>::operator()): Likewise.
2445 2011-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
2447         * testsuite/util/testsuite_rvalref.h: Minor tweaks.
2449 2011-03-09  Jonathan Wakely  <redi@gcc.gnu.org>
2450             Chris Jefferson  <chris@bubblescope.net>
2451             Paolo Carlini  <paolo.carlini@oracle.com>
2453         * testsuite/util/testsuite_rvalref.h (rvalstruct_compare_by_value):
2454         New.
2455         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
2456         Likewise.
2457         * testsuite/25_algorithms/partial_sort/check_compare_by_value:
2458         Likewise.
2459         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
2460         Likewise.
2461         * testsuite/25_algorithms/sort/check_compare_by_value: Likewise.
2463 2011-03-09  Chris Jefferson  <chris@bubblescope.net>
2465         PR libstdc++/48038
2466         * include/bits/stl_algo.h (__merge_backward): Rename to
2467         __move_merge_backward and change to always move rather than copy.
2468         (__move_merge): New function similar to std::merge except values
2469         are moved instead of copied.
2470         (__merge_adaptive, __merge_sort_loop): Change from using std::merge
2471         and __merge_backward to __move_merge and __move_merge_backward.
2473 2011-03-07  Jason Merrill  <jason@redhat.com>
2475         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
2476         expected errors.
2478 2011-03-07  Benjamin Kosnik  <bkoz@redhat.com>
2479             Matthias Klose  <doko@ubuntu.com>
2480             Jonathan Wakely  <redi@gcc.gnu.org>
2482         PR libstdc++/47145
2483         * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Define.
2484         * configure.ac: Use it.
2485         * doc/Makefile.am (XSL_STYLE_DIR): Set at configure time.
2486         * configure: Regenerate.
2487         * doc/Makefile.in: Regenerate.
2489 2011-03-04  Benjamin Kosnik  <bkoz@chula>
2491         * src/Makefile.am (inst_sources): Make source instantion files
2492         conditional.
2493         (XTEMPLATE_FLAGS): Make -fno-implicit-templates conditional.
2494         * src/Makefile.in: Regenerate.
2495         * src/valarray-inst.cc: Move to..
2496         * src/valarray.cc: ...this.
2497         * acinclude.m4 (GLIBCXX_ENABLE_EXTERN_TEMPLATE]): Define.
2498         * configure.ac (GLIBCXX_ENABLE_EXTERN_TEMPLATE): Use it.
2499         * configure: Regenerate.
2500         * include/Makefile.am (stamp-extern-template): Add.
2501         * include/Makefile.in: Regenerate.
2503         * doc/xml/manual/configure.xml: Document --enable-extern-template.
2505         * include/bits/locale_classes.tcc: Adjust comment.
2506         * include/bits/locale_facets.tcc: Same.
2507         * include/bits/basic_ios.tcc: Same.
2508         * include/bits/istream.tcc: Same.
2509         * include/bits/codecvt.h: Same.
2510         * include/bits/ostream.tcc: Same.
2511         * include/bits/sstream.tcc: Same.
2512         * include/bits/c++config: Same.
2513         * include/bits/basic_string.tcc: Same.
2514         * include/bits/ostream_insert.h: Same.
2515         * include/bits/locale_facets_nonio.tcc: Same.
2516         * include/bits/streambuf.tcc: Same.
2517         * include/bits/allocator.h: Same.
2518         * include/bits/fstream.tcc: Same.
2520         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
2522 2011-03-02  Benjamin Kosnik  <bkoz@redhat.com>
2524         * testsuite/Makefile.am: Make clean fixups.
2525         * testsuite/Makefile.in: Regenerate.
2527 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
2529         * include/std/ratio (ratio_less): Add comments.
2531 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
2533         PR libstdc++/47913
2534         * include/std/ratio (ratio_add): Avoid denominator overflow.
2535         * testsuite/20_util/ratio/operations/47913.cc: New.
2537 2011-02-28  Benjamin Kosnik  <bkoz@redhat.com>
2539         * testsuite/20_util/hash/chi2_quality.cc: Use C++0x mode on simulators.
2540         * testsuite/20_util/hash/quality.cc: Same.
2542 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
2544         PR libstdc++/47921
2545         * include/std/streambuf (basic_streambuf<>::__safe_gbump,
2546         __safe_pbump): Add.
2547         * include/bits/streambuf.tcc (basic_streambuf<>::xgetn,
2548         xputn): Use the latter.
2549         * include/bits/streambuf_iterator.h: Likewise.
2550         * src/strstream.cc: Likewise.
2551         * src/streambuf.cc: Likewise.
2552         * src/compatibility.cc: Likewise.
2553         * src/istream.cc: Likewise.
2554         * include/bits/fstream.tcc (basic_filebuf<>::xsgetn): Use setg
2555         instead of gbump.
2556         * include/std/sstream (basic_stringbuf<>::_M_pbump): Add.
2557         * include/bits/sstream.tcc (basic_stringbuf<>::seekoff,
2558         seekpos, _M_sync): Use setg, setp, and _M_pbump.
2559         * config/abi/pre/gnu.ver: Tweak.
2561 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
2563         * testsuite/20_util/ratio/comparisons/comp3.cc: New.
2565 2011-02-28  Marc Glisse  <marc.glisse@normalesup.org>
2567         PR libstdc++/42622
2568         * include/std/ratio (ratio_less): Reimplement to never overflow.
2569         * testsuite/20_util/ratio/comparisons/comp2.cc: Extend.
2571 2011-02-24  Benjamin Kosnik  <bkoz@redhat.com>
2573         * testsuite/18_support/type_info/fundamental.cc: New.
2575         * testsuite/Makefile.am: Make clean fixups.
2576         * testsuite/Makefile.in: Regenerate.
2578 2011-02-19  François Dumont  <francois.cppdevs@free.fr>
2580         * include/debug/string (basic_string::insert): Add iterator check and
2581         pass normal iterator to normal insert.
2582         * include/debug/macros.h (__glibcxx_check_heap,
2583         __glibcxx_check_heap_pred): Remove __glibcxx_check_valid_range,
2584         already done.
2586 2011-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
2588         PR libstdc++/47776
2589         * testsuite/ext/vstring/hash/char/1.cc: Fix.
2590         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
2592 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
2594         * include/bits/regex.h (basic_regex::traits_type): Add typedef.
2595         (basic_regex::basic_regex(basic_regex&&)): Add noexcept.
2596         (basic_regex::operator=(basic_regex&&)): Likewise.
2597         (basic_regex::assign(basic_regex&&)): Likewise.
2598         (operator==(sub_match,...)): Implement DR 1181.
2599         (match_results::match_results(match_results&&)): Define.
2600         (match_results::operator=(const match_results&)): Fix parameter type.
2601         (match_results::operator=(match_results&&)): Define.
2603 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
2605         PR libstdc++/47724
2606         * include/bits/regex_compiler.h (_Scanner::_M_advance): Do not treat
2607         line anchors as metacharacters.
2608         * testsuite/28_regex/basic_regex/ctors/47724.cc: New.
2610 2011-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
2612         PR libstdc++/47773
2613         * include/ext/vstring.h (hash<__gnu_cxx::__vstring>,
2614         hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>,
2615         hash<__gnu_cxx::__u32vstring>): Add.
2616         * testsuite/ext/vstring/hash/char/1.cc: New.
2617         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
2619 2011-02-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
2621         * include/bits/regex.h (match_results::format): Use char_traits.
2623 2011-02-16  Benjamin Kosnik  <bkoz@redhat.com>
2625         * include/std/atomic: Remove atomic_address, uplift to N3225.
2626         * include/bits/atomic_0.h: Same.
2627         * include/bits/atomic_2.h: Same.
2628         * include/bits/atomic_base.h: Same.
2629         * testsuite/29_atomics/atomic_address/*: Delete.
2631 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2633         * include/bits/regex.h (sub_match::sub_match): Add.
2634         (match_results::ready): Add.
2635         (match_results::empty): Adjust.
2636         (match_results::length): Add missing dereference.
2637         (match_results::operator[],prefix,suffix): Add debug mode checks.
2638         (match_results::cend): Re-use end().
2639         (match_results::format): Adjust signatures.
2640         (operator==(match_results,match_results)): Implement.
2641         * include/bits/regex_compiler.h (_Scanner_base): Use constexpr.
2642         * include/bits/regex_constants.h (syntax_option_type): Likewise.
2643         * include/bits/regex_grep_matcher.h: Fix comment typo.
2644         (_SpecializedResults::_SpecializedResults): Simplify.
2645         * include/bits/regex_cursor.h: Fix comment typo.
2646         * include/bits/regex_nfa.h: Likewise.
2647         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
2648         Fix error code, remove xfail.
2649         * testsuite/28_regex/basic_regex/ctors/extended/
2650         string_range_01_02_03.cc: Likewise.
2652 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2654         * include/bits/regex_compiler.h: Remove unnecessary bind() calls.
2655         * include/bits/regex_nfa.h: Remove unnecessary base classes.
2657 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2659         * configure: Regenerate.
2661 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
2663         PR libstdc++/47709
2664         * include/ext/algorithm (is_heap): In C++0x mode import from
2665         namespace std.
2666         * testsuite/ext/is_heap/47709.cc: New.
2668 2011-02-12  Jakub Jelinek  <jakub@redhat.com>
2669             Jonathan Wakely  <jwakely.gcc@gmail.com>
2671         PR libstdc++/47662
2672         * testsuite/17_intro/headers/c++200x/operator_names.cc: New.
2673         * testsuite/17_intro/headers/c++1998/operator_names.cc: Add comment.
2675 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
2677         * include/tr1/cmath (fabs): Define.
2678         * include/tr1/complex (acos, asin, atan): Avoid duplicate definitions
2679         in C++0x mode.
2681 2011-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
2683         * testsuite/tr1/headers/c++200x/complex.cc: New.
2685 2011-02-11  Johannes Singler  <singler@kit.edu>
2687         PR libstdc++/47433
2688         * include/parallel/losertree.h
2689         (_LoserTreeUnguarded<>::__delete_min_insert):
2690         Add missing "using std::swap;", as for other variants.
2692 2011-02-10  Benjamin Kosnik  <bkoz@redhat.com>
2694         * src/Makefile.am (sources): Add regex.cc.
2695         * src/Makefile.in: Regenerate.
2696         * src/regex.cc: New.
2697         * include/bits/regex_error.h (error_type): Use constexpr.
2698         (regex_error): Move ctor and dtor out of line.
2700         * testsuite/28_regex/03_requirements: To...
2701         * testsuite/28_regex/requirements: ... this.
2702         * testsuite/28_regex/04_header: To...
2703         * testsuite/28_regex/headers: ... this.
2704         * testsuite/28_regex/05_constants: To...
2705         * testsuite/28_regex/constants: ... this.
2706         * testsuite/28_regex/06_exception_type: To...
2707         * testsuite/28_regex/regex_error: ... this.
2708         * testsuite/28_regex/07_traits: To...
2709         * testsuite/28_regex/traits: ... this.
2710         * testsuite/28_regex/08_basic_regex: To...
2711         * testsuite/28_regex/basic_regex: ... this.
2712         * testsuite/28_regex/09_sub_match: To...
2713         * testsuite/28_regex/sub_match: ... this.
2714         * testsuite/28_regex/10_match_results: To...
2715         * testsuite/28_regex/match_results: ... this.
2716         * testsuite/28_regex/11_algorithms: To...
2717         * testsuite/28_regex/algorithms: ... this.
2718         * testsuite/28_regex/12_iterators: To...
2719         * testsuite/28_regex/iterators: ... this.
2721 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
2723         PR libstdc++/47662
2724         * include/bits/c++config: Do not use alternative token.
2725         * testsuite/17_intro/headers/c++1998/operator_names.cc: New.
2727 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
2729         * src/future.cc (future_error_category::message): Handle no_state.
2731 2011-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
2733         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Do
2734         not test in C++0x mode.
2735         * testsuite/23_containers/map/modifiers/erase/47628.cc: Likewise.
2736         * testsuite/20_util/headers/utility/synopsis.cc: Tweak to work
2737         in C++0x mode too.
2739 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
2741         * doc/xml/manual/status_cxx200x.xml: Update.
2742         * doc/html/*: Regenerate.
2744 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
2746         * doc/xml/manual/debug.xml: Improve data race docs.
2748 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
2750         PR libstdc++/47668
2751         * include/debug/map.h (map): Remove unnecessary using-declaration.
2752         * include/debug/multimap.h (multimap): Likewise.
2753         * include/profile/map.h (map): Likewise.
2754         * include/profile/multimap.h (multimap): Likewise.
2756 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2758         PR libstdc++/43863
2759         * libsupc++/guard.cc (recursive_init_error::~recursive_init_error):
2760         Move to ...
2761         * libsupc++/guard_error.cc: ... new file.
2762         * libsupc++/Makefile.am: Update.
2763         * libsupc++/Makefile.in: Regenerate.
2765 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2767         * include/std/future (packaged_task::operator bool): Rename to...
2768         (packaged_task::valid): ...this.
2769         * testsuite/30_threads/packaged_task/cons/1.cc: Adjust.
2770         * testsuite/30_threads/packaged_task/cons/2.cc: Adjust.
2771         * testsuite/30_threads/packaged_task/cons/move.cc: Adjust.
2772         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Adjust.
2773         * testsuite/30_threads/packaged_task/cons/alloc.cc: Adjust.
2774         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
2775         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
2776         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
2777         * testsuite/30_threads/packaged_task/members/swap.cc: Adjust.
2778         * testsuite/30_threads/packaged_task/members/boolconv.cc: Remove.
2779         * testsuite/30_threads/packaged_task/members/valid.cc: Add.
2781 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
2783         * doc/xml/manual/io.xml: Fix typo.
2784         * doc/html/manual/streambufs.html: Likewise.
2786 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
2788         * config/abi/pre/gnu.ver: Fix.
2790 2011-02-08  Benjamin Kosnik  <bkoz@redhat.com>
2792         * doc/xml/manual/appendix_porting.xml: Add doc section.
2793         * doc/xml/manual/appendix_contributing.xml: Split out doc bits to...
2794         * doc/xml/manual/documentation_hacking.xml: ...here.
2796         * doc/xml/manual/debug_mode.xml: Adjust.
2797         * doc/xml/manual/prerequisites.xml: Adjust.
2798         * doc/Makefile.am (xml_sources): Add dot files,
2799         documentation_hacking.xml.
2800         * doc/Makefile.in: Regenerate.
2802         * doc/xml/manual/build_hacking.xml: Use absolute paths for images.
2803         * doc/xml/images/confdeps.pdf: Add.
2805         * doc/html/*: Regenerate.
2807 2011-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
2809         * doc/xml/gnu/fdl-1.2.xml: Remove.
2810         * doc/xml/gnu/gpl-2.0.xml: Remove.
2811         * doc/Makefile.am: Update.
2812         * doc/Makefile.in: Regenerate.
2814 2011-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
2816         PR libstdc++/47628
2817         * include/bits/stl_tree.h (_Rb_tree::erase(iterator), erase(iterator,
2818         iterator)): Add back in C++03 mode.
2819         * testsuite/23_containers/map/modifiers/erase/47628.cc: New.
2820         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Likewise.
2822 2011-02-07  Benjamin Kosnik  <bkoz@redhat.com>
2824         PR libstdc++/47560 try two
2825         * config/os/hpux/os_defines.h: Guard for C++.
2827 2011-02-07  Gerald Pfeifer  <gerald@pfeifer.com>
2829         * doc/xml/faq.xml: Adjust link to bug database.
2830         Remove old item on broken header files.
2832 2011-02-04  Benjamin Kosnik  <bkoz@redhat.com>
2834         * include/bits/regex_error.h (__throw_regex_error): Not inline.
2835         * src/functexcept.cc: Add definition.
2836         * config/abi/pre/gnu.ver: Export.
2838 2011-02-04  Ralf Corsépius <ralf.corsepius@rtems.org>
2840         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*.
2841         * configure: Regenerate.
2843 2011-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
2845         PR libstdc++/46914
2846         * include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
2847         _ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
2848         avoid name conflicts.
2850 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
2852         PR libstdc++/47560
2853         * config/os/hpux/os_defines.h: Remove use of macros on namespace.
2855 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
2857         * scripts/run_doxygen: Allow doxygen 1.7.0 again.
2858         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): Re-enable.
2859         (COMPACT_LATEX): Enable.
2861         * include/profile/impl/profiler_container_size.h: Adjust doxygen markup.
2862         * include/profile/impl/profiler_hash_func.h: Same.
2863         * include/bits/hashtable.h: Same.
2864         * include/backward/auto_ptr.h: Same.
2865         * include/backward/strstream: Same.
2866         * include/backward/backward_warning.h: Same.
2867         * include/backward/binders.h: Same.
2869 2011-02-01  Gerald Pfeifer  <gerald@pfeifer.com>
2871         * doc/xml/manual/debug.xml: Use GDB instead of gdb.
2872         Adjust link to GDB manual.
2874 2011-01-31  Benjamin Kosnik  <bkoz@redhat.com>
2876         * include/bits/c++config (_GLIBCXX_DEPRECATED): To
2877         _GLIBCXX_USE_DEPRECATED.
2878         (_GLIBCXX_DEPRECATED_ATTR): To _GLIBCXX_DEPRECATED.
2879         * doc/xml/manual/using.xml: Same.
2880         * include/std/memory: Same.
2881         * include/std/streambuf: Same.
2882         * include/bits/shared_ptr.h: Same.
2883         * include/bits/unique_ptr.h: Same.
2884         * include/bits/shared_ptr_base.h: Same.
2885         * include/bits/stl_function.h: Same.
2886         * include/tr1/shared_ptr.h: Same.
2887         * include/backward/auto_ptr.h: Same.
2888         * include/backward/binders.h: Same.
2890 2011-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
2892         * doc/html/ext/lwg-active.html: Update to Revision D73.
2893         * doc/html/ext/lwg-closed.html: Likewise.
2894         * doc/html/ext/lwg-defects.html: Likewise.
2895         * doc/xml/manual/intro.xml: Update status of issues 408, 539, 865.
2897 2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>
2899         PR libstdc++/36104 part four
2900         * include/bits/c++config (_GLIBCXX_STD): Remove.
2901         (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
2902         (_GLIBCXX_P): Now _GLIBCXX_STD_A.
2903         (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
2904          _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
2905         (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
2906          _GLIBCXX_INLINE_PROFILE): Remove.
2907         (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
2908         (_GLIBCXX_END_NAMESPACE): Remove.
2909         (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
2910         (_GLIBCXX_END_NESTED_NAMESPACE): Remove.
2911         (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
2912         (_GLIBCXX_END_NAMESPACE_ALGO): Add.
2913         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
2914         (_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
2915         (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
2916         (_GLIBCXX_END_NAMESPACE_VERSION): Add.
2917         (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
2918         (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
2919         (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
2920         * include/*: Use new macros for namespace scope.
2921         * config/*: Same.
2922         * src/*: Same.
2924         * src/Makefile.am (sources): Remove debug_list.cc, add
2925         compatibility-debug_list-2.cc.
2926         (parallel_sources): Remove parallel_list.cc, add
2927         compatibility-parallel_list-2.cc.
2928         (compatibility-parallel_list-2.[o,lo]): New rule.
2929         * src/Makefile.in: Regenerate.
2930         * src/debug_list.cc: Remove.
2931         * src/parallel_list.cc: Remove.
2932         * src/compatibility-list-2.cc: New.
2933         * src/compatibility-debug_list-2.cc: New.
2934         * src/compatibility-parallel_list-2.cc: New.
2936         * doc/doxygen/user.cfg.in: Adjust macros.
2938         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
2939         * testsuite/20_util/declval/requirements/1_neg.cc: Same.
2940         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
2941         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
2942         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
2943         * testsuite/20_util/forward/c_neg.cc: Same.
2944         * testsuite/20_util/forward/f_neg.cc: Same.
2945         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
2946         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
2947         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
2948         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
2949         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
2950         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
2951         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
2952         * testsuite/23_containers/deque/requirements/dr438/
2953         constructor_1_neg.cc: Same.
2954         * testsuite/23_containers/deque/requirements/dr438/
2955         constructor_2_neg.cc: Same.
2956         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
2957         * testsuite/23_containers/forward_list/capacity/1.cc: Same.
2958         * testsuite/23_containers/forward_list/requirements/dr438/
2959         assign_neg.cc: Same.
2960         * testsuite/23_containers/forward_list/requirements/dr438/
2961         constructor_1_neg.cc: Same.
2962         * testsuite/23_containers/forward_list/requirements/dr438/
2963         constructor_2_neg.cc: Same.
2964         * testsuite/23_containers/forward_list/requirements/dr438/
2965         insert_neg.cc: Same.
2966         * testsuite/23_containers/list/capacity/29134.cc: Same.
2967         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
2968         * testsuite/23_containers/list/requirements/dr438/
2969         constructor_1_neg.cc: Same.
2970         * testsuite/23_containers/list/requirements/dr438/
2971         constructor_2_neg.cc: Same.
2972         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
2973         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
2974         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
2975         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
2976         * testsuite/23_containers/vector/requirements/dr438/
2977         constructor_1_neg.cc: Same.
2978         * testsuite/23_containers/vector/requirements/dr438/
2979         constructor_2_neg.cc: Same.
2980         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
2981         * testsuite/25_algorithms/sort/35588.cc: Same.
2982         * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
2983         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
2984         * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
2985         * testsuite/ext/profile/profiler_algos.cc: Same.
2986         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
2987         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
2988         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
2989         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
2990         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
2992 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
2994         * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification.
2995         Improve description of one such reference.
2997 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
2999         * doc/xml/manual/codecvt.xml: Fix link to The Austin Common
3000         Standards Revision Group.
3001         * doc/xml/manual/locale.xml: Ditto.
3002         * doc/xml/manual/messages.xml: Ditto.
3003         * doc/xml/manual/using_exceptions.xml: Ditto.
3005 2011-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
3007         * include/bits/atomic_base.h: Do not include <stddef.h>.
3008         (kill_dependency): Uglify ret.
3010 2011-01-26  Johannes Singler  <singler@kit.edu>
3012         * include/parallel/numeric (inner_product, partial_sum):
3013         Qualify subsequent call with __gnu_parallel instead of
3014         _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
3015         * include/parallel/algobase.h (equal): Likewise.
3016         * include/parallel/algo.h (find_first_of, search_n, merge,
3017         nth_element, partial_sort, max_element, min_element): Likewise.
3018         * testsuite/25_algorithms/headers/algorithm/
3019         parallel_algorithm_mixed1.cc (main): Add respective test cases.
3020         * testsuite/25_algorithms/headers/algorithm/
3021         parallel_algorithm_mixed2.cc (main): Likewise.
3022         * testsuite/26_numerics/headers/numeric/
3023         parallel_numeric_mixed1.cc (main): Likewise.
3024         * testsuite/26_numerics/headers/numeric/
3025         parallel_numeric_mixed2.cc (main): Likewise.
3027 2011-01-24  Graham Reed  <greed@pobox.com>
3029         PR libstdc++/47387
3030         * config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
3031         provided.
3033 2011-01-24  Johannes Singler  <singler@kit.edu>
3035         PR libstdc++/47433
3036         * include/parallel/losertree.h
3037         (_LoserTree<>::__delete_min_insert):
3038         Do not qualify swap with std:: for value type,
3039         but include a using directive instead.
3040         (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
3041         * include/parallel/balanced_quicksort.h (__qsb_divide):
3042         Use std::iter_swap instead of std::swap.
3043         (__qsb_local_sort_with_helping): Likewise.
3044         * include/parallel/partition.h (__parallel_partition):
3045         Likewise. (__parallel_nth_element): Likewise.
3047 2011-01-24  Johannes Singler  <singler@kit.edu>
3049         PR libstdc++/47437
3050         * include/parallel/multiway_merge.h (_UnguardedIterator):
3051         Remove useless "mutable" from reference declaration.
3053 2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>
3055         * include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove.
3056         * include/debug/safe_sequence.h: Same.
3057         * include/debug/safe_iterator.h: Same.
3058         * include/std/forward_list: Same.
3059         * include/std/deque: Same.
3060         * include/std/list: Same.
3061         * include/std/random: Same.
3062         * include/std/streambuf: Same.
3063         * include/std/fstream: Same.
3064         * include/std/istream: Same.
3065         * include/std/string: Same.
3066         * include/std/ostream: Same.
3067         * include/std/sstream: Same.
3068         * include/ext/vstring.h: Same.
3069         * include/bits/basic_ios.h: Same.
3070         * include/bits/locale_classes.h: Same.
3071         * include/bits/locale_facets.h: Same.
3072         * include/bits/valarray_array.h: Same.
3073         * include/bits/locale_facets_nonio.h: Same.
3074         * include/tr1/random: Same.
3076 2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
3078         * doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.
3080 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
3082         PR libstdc++/36104 part three
3083         * src/hashtable_c++0x.cc: Adjust namespace macros.
3084         * testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
3085         * config/abi/pre/gnu-versioned-namespace.ver: Update.
3087 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
3089         * include/ext/pb_ds/detail/resize_policy/
3090         hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
3091         * include/ext/pb_ds/detail/pat_trie_/
3092         constructors_destructor_fn_imps.hpp: Same.
3093         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
3094         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
3095         * include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.
3097         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
3098         iterations downward when testing in debug mode.
3099         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
3100         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
3101         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
3102         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
3103         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
3104         * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
3105         reduce in debug mode.
3107 2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>
3109         PR libstdc++/36104 part two
3110         * include/bits/hashtable.h: Revert to non-nested macro usage.
3111         * include/bits/hashtable_policy.h: Same.
3113 2011-01-19  Graham Reed  <greed@pobox.com>
3115         PR libstdc++/47354
3116         * src/bitmap_allocator.cc (free_list::_M_get): Lock mutex.
3118 2011-01-18  Benjamin Kosnik  <bkoz@redhat.com>
3120         * doc/xml/images/confdeps.png: Regenerate.
3122         * include/std/chrono (duration): Mark copy constructor constexpr.
3123         * testsuite/20_util/duration/cons/constexpr.cc: Add test.
3125 2011-01-18  Paolo Carlini  <paolo.carlini@oracle.com>
3127         * include/bits/unique_ptr.h (default_delete<>::default_delete()):
3128         Declare defaulted per DR 1517.
3129         * testsuite/util/testsuite_common_types.h
3130         (constexpr_defaulted_default_constructible): Add.
3131         * testsuite/20_util/default_delete/cons/constexpr.cc: Use it.
3133 2011-01-17  Paolo Carlini  <paolo.carlini@oracle.com>
3135         * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
3136         Implement DR 1198.
3137         * include/bits/stl_stack.h (stack<>::swap): Likewise.
3139 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
3141         PR libstdc++/47323
3142         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
3143         Only test wregex when _GLIBCXX_USE_WCHAR_T is defined.
3145 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
3147         PR libstdc++/47320
3148         * testsuite/18_support/numeric_limits/lowest.cc:
3149         Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined.
3151 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
3153         PR libstdc++/47321
3154         * testsuite/21_strings/basic_string/requirements/typedefs.cc:
3155         Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined.
3157 2011-01-16  François Dumont  <francois.cppdevs@free.fr>
3159         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Move
3160         to this. Use _neg suffix.
3161         * testsuite/23_containers/forward_list/debug/erase_after1.cc: ...from
3162         this.
3163         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
3164         Same.
3165         * testsuite/23_containers/forward_list/debug/erase_after2.cc: Same.
3166         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
3167         Same.
3168         * testsuite/23_containers/forward_list/debug/erase_after3.cc: Same.
3169         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
3170         Same.
3171         * testsuite/23_containers/forward_list/debug/erase_after4.cc: Same.
3172         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
3173         Same.
3174         * testsuite/23_containers/forward_list/debug/erase_after5.cc: Same.
3175         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
3176         Same.
3177         * testsuite/23_containers/forward_list/debug/erase_after6.cc: Same.
3178         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
3179         Same.
3180         * testsuite/23_containers/forward_list/debug/erase_after7.cc: Same.
3181         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
3182         Same.
3183         * testsuite/23_containers/forward_list/debug/erase_after8.cc: Same.
3184         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
3185         Same.
3186         * testsuite/23_containers/forward_list/debug/erase_after9.cc: Same.
3187         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
3188         Same.
3189         * testsuite/23_containers/forward_list/debug/insert_after1.cc: Same.
3190         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
3191         Same.
3192         * testsuite/23_containers/forward_list/debug/insert_after2.cc: Same.
3193         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
3194         Same.
3195         * testsuite/23_containers/forward_list/debug/insert_after3.cc: Same.
3196         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
3197         Same.
3198         * testsuite/23_containers/forward_list/debug/splice_after1.cc: Same.
3199         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
3200         Same.
3201         * testsuite/23_containers/forward_list/debug/splice_after2.cc: Same.
3202         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
3203         Same.
3204         * testsuite/23_containers/forward_list/debug/splice_after3.cc: Same.
3205         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
3206         Same.
3207         * testsuite/23_containers/forward_list/debug/splice_after4.cc: Same.
3209 2011-01-14  Benjamin Kosnik  <bkoz@redhat.com>
3211         PR libstdc++/36104
3212         * include/Makefile.am (bits_sup_headers, stamp-bits-sup): New.
3213         * include/Makefile.in: Regenerate.
3214         * libsupc++/Makefile.am (std_HEADERS, bits_HEADERS): New.
3215         (install-stdHEADERS, install-bitsHEADERS): New.
3216         * libsupc++/Makefile.in: Regenerate.
3218         * include/bits/c++config: Update for inline namespaces.
3219         * libsupc++/cxxabi-forced.h: To...
3220         * libsupc++/cxxabi_forced.h: ...this.
3221         * libsupc++/hash_bytes.h: Separate file.
3222         * libsupc++/typeinfo: Use it.
3223         * libsupc++/exception: Adjust for bits subdirectory.
3224         * libsupc++/eh_aux_runtime.cc: Same.
3225         * libsupc++/eh_ptr.cc: Same.
3226         * libsupc++/new_op.cc: Same.
3227         * libsupc++/exception_defines.h: Same.
3228         * libsupc++/nested_exception.h: Same.
3229         * libsupc++/eh_terminate.cc: Same.
3230         * libsupc++/vec.cc: Same.
3231         * libsupc++/vterminate.cc: Same.
3232         * libsupc++/exception_ptr.h: Same.
3233         * libsupc++/eh_personality.cc: Same.
3234         * libsupc++/eh_call.cc: Same.
3235         * libsupc++/new_opnt.cc: Same.
3236         * libsupc++/hash_bytes.cc: Same.
3237         * config/cpu/arm/cxxabi_tweaks.h: Same.
3238         * config/cpu/generic/cxxabi_tweaks.h: Same.
3239         * libsupc++/cxxabi.h: Same. Consolidate _GLIBCXX_NOTHROW defines.
3240         * include/std/bitset: Same.
3241         * include/ext/vstring.tcc: Same.
3242         * include/bits/hashtable.h: Same.
3243         * include/bits/functional_hash.h: Same.
3244         * include/bits/hashtable_policy.h: Same.
3245         * include/bits/basic_string.h: Same.
3246         * include/bits/istream.tcc: Same.
3247         * include/bits/ostream.tcc: Same.
3248         * include/bits/algorithmfwd.h: Same.
3249         * include/bits/basic_string.tcc: Same.
3250         * include/bits/ostream_insert.h: Same.
3251         * include/bits/fstream.tcc: Same.
3252         * include/bits/functexcept.h: Same.
3254         * doc/doxygen/user.cfg.in: Adjust names.
3256         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
3258 2011-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
3260         * testsuite/25_algorithms/is_permutation/check_type.cc: Minor
3261         tweaks.
3262         * testsuite/25_algorithms/is_permutation/1.cc: Cosmetic changes.
3264 2011-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
3266         * testsuite/25_algorithms/is_permutation/check_type.cc: New.
3267         * testsuite/25_algorithms/is_permutation/requirements/
3268         explicit_instantiation/2.cc: Likewise.
3269         * testsuite/25_algorithms/is_permutation/requirements/
3270         explicit_instantiation/pod.cc: Likewise.
3271         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
3273 2011-01-13  John Lakos  <jlakos@bloomberg.net>
3274             Pablo Halpern  <phalpern@halpernwightsoftware.com>
3275             Paolo Carlini  <paolo.carlini@oracle.com>
3277         * include/bits/stl_algo.h (is_permutation): Add, per N3068.
3278         * include/bits/algorithmfwd.h: Add.
3280 2011-01-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
3282         PR libstdc++/47045
3283         * config/os/bsd/netbsd/ctype_base.h: Use new macros based on version.
3285 2011-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
3287         * aclocal.m4: Regenerate.
3289 2011-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
3291         PR libstdc++/47185
3292         * src/placeholders.cc: New.
3293         * src/Makefile.am: Adjust.
3294         * src/Makefile.in: Regenerate.
3295         * include/std/functional (placeholders::_1, _2, ..., _29): Declare
3296         extern.
3297         * config/abi/pre/gnu.ver: Export.
3299 2011-01-05  François Dumont  <francois.cppdevs@free.fr>
3301         * include/debug/safe_base.h (_Safe_iterator_base::_M_unlink): New.
3302         * include/src/debug.cc: Use latter
3303         * include/debug/forward_list (forward_list<>::_M_swap):  Fix to
3304         correctly handle before_begin iterators.
3305         * testsuite/23_containers/forward_list/debug/swap.cc: Remove now
3306         useless _GLIBCXX_DEBUG checks.
3308 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
3310         PR libstdc++/47145
3311         * configure.ac (AC_CHECK_FILE): Replaced by test -f.
3312         * configure: Regenerated.
3314 2011-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
3316         PR libstdc++/46922
3317         * config/abi/pre/gnu.ver: Export std::bad_function_call symbols.
3320 Copyright (C) 2011 Free Software Foundation, Inc.
3322 Copying and distribution of this file, with or without modification,
3323 are permitted in any medium without royalty provided the copyright
3324 notice and this notice are preserved.