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