OSDN Git Service

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