OSDN Git Service

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