OSDN Git Service

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