OSDN Git Service

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