OSDN Git Service

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