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