]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
expmed.c (expand_shift_1): Add MAY_FAIL parameter and do not assert that the result...
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
12d3f34b
JW
12016-10-17 Jonathan Wakely <jwakely@redhat.com>
2
3 PR libstdc++/77994
4 * include/bits/stl_algo.h (sample): Convert size argument to iterator
5 difference type.
6 * include/experimental/algorithm (experimental::sample): Likewise.
7 * testsuite/25_algorithms/sample/2.cc: New test.
8
a9260b7e
PC
92016-10-17 Paolo Carlini <paolo.carlini@oracle.com>
10
11 * testsuite/unordered_map/insert/57619.C: Rename to 57619.cc.
12 * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
13
142016-10-17 Paolo Carlini <paolo.carlini@oracle.com>
15
16 * testsuite/array/capacity/empty.cc: Remove 'test' variables.
17 * testsuite/array/capacity/max_size.cc: Likewise.
18 * testsuite/array/capacity/size.cc: Likewise.
19 * testsuite/array/comparison_operators/equal.cc: Likewise.
20 * testsuite/array/comparison_operators/greater.cc: Likewise.
21 * testsuite/array/comparison_operators/greater_or_equal.cc: Likewise.
22 * testsuite/array/comparison_operators/less.cc: Likewise.
23 * testsuite/array/comparison_operators/less_or_equal.cc: Likewise.
24 * testsuite/array/comparison_operators/not_equal.cc: Likewise.
25 * testsuite/array/element_access/54388.cc: Likewise.
26 * testsuite/array/element_access/at_out_of_range.cc: Likewise.
27 * testsuite/array/element_access/back.cc: Likewise.
28 * testsuite/array/element_access/data.cc: Likewise.
29 * testsuite/array/element_access/front.cc: Likewise.
30 * testsuite/array/iterators/end_is_one_past.cc: Likewise.
31 * testsuite/array/requirements/contiguous.cc: Likewise.
32 * testsuite/array/requirements/fill.cc: Likewise.
33 * testsuite/array/requirements/member_swap.cc: Likewise.
34 * testsuite/array/requirements/zero_sized_arrays.cc: Likewise.
35 * testsuite/array/specialized_algorithms/swap.cc: Likewise.
36 * testsuite/array/tuple_interface/tuple_element.cc: Likewise.
37 * testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise.
38 * testsuite/array/tuple_interface/tuple_size.cc: Likewise.
39 * testsuite/bitset/all/1.cc: Likewise.
40 * testsuite/bitset/cons/1.cc: Likewise.
41 * testsuite/bitset/cons/16020.cc: Likewise.
42 * testsuite/bitset/cons/2.cc: Likewise.
43 * testsuite/bitset/cons/3.cc: Likewise.
44 * testsuite/bitset/cons/50268.cc: Likewise.
45 * testsuite/bitset/cons/6282.cc: Likewise.
46 * testsuite/bitset/cons/dr1325-2.cc: Likewise.
47 * testsuite/bitset/cons/dr396.cc: Likewise.
48 * testsuite/bitset/ext/15361.cc: Likewise.
49 * testsuite/bitset/input/1.cc: Likewise.
50 * testsuite/bitset/operations/1.cc: Likewise.
51 * testsuite/bitset/operations/13838.cc: Likewise.
52 * testsuite/bitset/operations/2.cc: Likewise.
53 * testsuite/bitset/test/1.cc: Likewise.
54 * testsuite/bitset/to_string/1.cc: Likewise.
55 * testsuite/bitset/to_string/dr396.cc: Likewise.
56 * testsuite/bitset/to_ullong/1.cc: Likewise.
57 * testsuite/bitset/to_ulong/1.cc: Likewise.
58 * testsuite/deque/allocator/copy.cc: Likewise.
59 * testsuite/deque/allocator/copy_assign.cc: Likewise.
60 * testsuite/deque/allocator/ext_ptr.cc: Likewise.
61 * testsuite/deque/allocator/minimal.cc: Likewise.
62 * testsuite/deque/allocator/move.cc: Likewise.
63 * testsuite/deque/allocator/move_assign.cc: Likewise.
64 * testsuite/deque/allocator/swap.cc: Likewise.
65 * testsuite/deque/capacity/29134-2.cc: Likewise.
66 * testsuite/deque/capacity/29134.cc: Likewise.
67 * testsuite/deque/capacity/moveable.cc: Likewise.
68 * testsuite/deque/capacity/resize_size.cc: Likewise.
69 * testsuite/deque/capacity/shrink_to_fit.cc: Likewise.
70 * testsuite/deque/cons/1.cc: Likewise.
71 * testsuite/deque/cons/2.cc: Likewise.
72 * testsuite/deque/cons/assign/1.cc: Likewise.
73 * testsuite/deque/cons/cons_size.cc: Likewise.
74 * testsuite/deque/cons/moveable.cc: Likewise.
75 * testsuite/deque/modifiers/erase/1.cc: Likewise.
76 * testsuite/deque/modifiers/erase/2.cc: Likewise.
77 * testsuite/deque/modifiers/erase/3.cc: Likewise.
78 * testsuite/deque/modifiers/erase/moveable.cc: Likewise.
79 * testsuite/deque/modifiers/moveable.cc: Likewise.
80 * testsuite/deque/modifiers/push_back/49836.cc: Likewise.
81 * testsuite/deque/modifiers/push_front/49836.cc: Likewise.
82 * testsuite/deque/modifiers/swap/1.cc: Likewise.
83 * testsuite/deque/modifiers/swap/2.cc: Likewise.
84 * testsuite/deque/modifiers/swap/3.cc: Likewise.
85 * testsuite/deque/operators/1.cc: Likewise.
86 * testsuite/deque/operators/2.cc: Likewise.
87 * testsuite/forward_list/allocator/copy.cc: Likewise.
88 * testsuite/forward_list/allocator/copy_assign.cc: Likewise.
89 * testsuite/forward_list/allocator/ext_ptr.cc: Likewise.
90 * testsuite/forward_list/allocator/minimal.cc: Likewise.
91 * testsuite/forward_list/allocator/move.cc: Likewise.
92 * testsuite/forward_list/allocator/move_assign.cc: Likewise.
93 * testsuite/forward_list/allocator/swap.cc: Likewise.
94 * testsuite/forward_list/capacity/1.cc: Likewise.
95 * testsuite/forward_list/capacity/resize_size.cc: Likewise.
96 * testsuite/forward_list/comparable.cc: Likewise.
97 * testsuite/forward_list/cons/1.cc: Likewise.
98 * testsuite/forward_list/cons/2.cc: Likewise.
99 * testsuite/forward_list/cons/3.cc: Likewise.
100 * testsuite/forward_list/cons/4.cc: Likewise.
101 * testsuite/forward_list/cons/5.cc: Likewise.
102 * testsuite/forward_list/cons/6.cc: Likewise.
103 * testsuite/forward_list/cons/7.cc: Likewise.
104 * testsuite/forward_list/cons/8.cc: Likewise.
105 * testsuite/forward_list/cons/9.cc: Likewise.
106 * testsuite/forward_list/cons/cons_size.cc: Likewise.
107 * testsuite/forward_list/cons/moveable.cc: Likewise.
108 * testsuite/forward_list/debug/clear.cc: Likewise.
109 * testsuite/forward_list/debug/construct4_neg.cc: Likewise.
110 * testsuite/forward_list/debug/erase_after1_neg.cc: Likewise.
111 * testsuite/forward_list/debug/move_assign_neg.cc: Likewise.
112 * testsuite/forward_list/debug/move_constructor.cc: Likewise.
113 * testsuite/forward_list/debug/move_neg.cc: Likewise.
114 * testsuite/forward_list/debug/splice_after.cc: Likewise.
115 * testsuite/forward_list/debug/swap.cc: Likewise.
116 * testsuite/forward_list/modifiers/1.cc: Likewise.
117 * testsuite/forward_list/modifiers/2.cc: Likewise.
118 * testsuite/forward_list/modifiers/3.cc: Likewise.
119 * testsuite/forward_list/modifiers/4.cc: Likewise.
120 * testsuite/forward_list/modifiers/5.cc: Likewise.
121 * testsuite/forward_list/modifiers/6.cc: Likewise.
122 * testsuite/forward_list/operations/1.cc: Likewise.
123 * testsuite/forward_list/operations/2.cc: Likewise.
124 * testsuite/forward_list/operations/3.cc: Likewise.
125 * testsuite/forward_list/operations/4.cc: Likewise.
126 * testsuite/forward_list/operations/5.cc: Likewise.
127 * testsuite/forward_list/operations/6.cc: Likewise.
128 * testsuite/forward_list/operations/7.cc: Likewise.
129 * testsuite/forward_list/operations/remove_freed.cc: Likewise.
130 * testsuite/list/61347.cc: Likewise.
131 * testsuite/list/allocator/copy.cc: Likewise.
132 * testsuite/list/allocator/copy_assign.cc: Likewise.
133 * testsuite/list/allocator/minimal.cc: Likewise.
134 * testsuite/list/allocator/move.cc: Likewise.
135 * testsuite/list/allocator/move_assign.cc: Likewise.
136 * testsuite/list/allocator/swap.cc: Likewise.
137 * testsuite/list/capacity/1.h: Likewise.
138 * testsuite/list/capacity/29134.cc: Likewise.
139 * testsuite/list/capacity/resize_size.cc: Likewise.
140 * testsuite/list/cons/1.h: Likewise.
141 * testsuite/list/cons/2.h: Likewise.
142 * testsuite/list/cons/3.h: Likewise.
143 * testsuite/list/cons/4.h: Likewise.
144 * testsuite/list/cons/5.h: Likewise.
145 * testsuite/list/cons/6.h: Likewise.
146 * testsuite/list/cons/7.h: Likewise.
147 * testsuite/list/cons/8.h: Likewise.
148 * testsuite/list/cons/9.h: Likewise.
149 * testsuite/list/cons/cons_size.cc: Likewise.
150 * testsuite/list/cons/moveable.h: Likewise.
151 * testsuite/list/debug/invalidation/1.cc: Likewise.
152 * testsuite/list/debug/invalidation/2.cc: Likewise.
153 * testsuite/list/debug/invalidation/3.cc: Likewise.
154 * testsuite/list/debug/invalidation/4.cc: Likewise.
155 * testsuite/list/modifiers/1.h: Likewise.
156 * testsuite/list/modifiers/2.h: Likewise.
157 * testsuite/list/modifiers/3.h: Likewise.
158 * testsuite/list/modifiers/insert/25288.h: Likewise.
159 * testsuite/list/modifiers/swap/1.h: Likewise.
160 * testsuite/list/modifiers/swap/2.h: Likewise.
161 * testsuite/list/modifiers/swap/3.h: Likewise.
162 * testsuite/list/operations/1.h: Likewise.
163 * testsuite/list/operations/2.h: Likewise.
164 * testsuite/list/operations/3.h: Likewise.
165 * testsuite/list/operations/4.h: Likewise.
166 * testsuite/list/operations/42352.cc: Likewise.
167 * testsuite/map/allocator/copy.cc: Likewise.
168 * testsuite/map/allocator/copy_assign.cc: Likewise.
169 * testsuite/map/allocator/init-list.cc: Likewise.
170 * testsuite/map/allocator/minimal.cc: Likewise.
171 * testsuite/map/allocator/move.cc: Likewise.
172 * testsuite/map/allocator/move_assign.cc: Likewise.
173 * testsuite/map/allocator/swap.cc: Likewise.
174 * testsuite/map/capacity/29134.cc: Likewise.
175 * testsuite/map/cons/moveable.cc: Likewise.
176 * testsuite/map/debug/construct5_neg.cc: Likewise.
177 * testsuite/map/debug/move_assign_neg.cc: Likewise.
178 * testsuite/map/debug/move_neg.cc: Likewise.
179 * testsuite/map/element_access/1.cc: Likewise.
180 * testsuite/map/element_access/2.cc: Likewise.
181 * testsuite/map/element_access/39901.cc: Likewise.
182 * testsuite/map/init-list.cc: Likewise.
183 * testsuite/map/modifiers/dr130.cc: Likewise.
184 * testsuite/map/modifiers/emplace/1.cc: Likewise.
185 * testsuite/map/modifiers/extract.cc: Likewise.
186 * testsuite/map/modifiers/insert/1.cc: Likewise.
187 * testsuite/map/modifiers/insert/16813.cc: Likewise.
188 * testsuite/map/modifiers/insert/2.cc: Likewise.
189 * testsuite/map/modifiers/insert/3.cc: Likewise.
190 * testsuite/map/modifiers/insert/4.cc: Likewise.
191 * testsuite/map/modifiers/insert/5.cc: Likewise.
192 * testsuite/map/modifiers/insert_or_assign/1.cc: Likewise.
193 * testsuite/map/modifiers/merge.cc: Likewise.
194 * testsuite/map/modifiers/swap/1.cc: Likewise.
195 * testsuite/map/modifiers/swap/2.cc: Likewise.
196 * testsuite/map/modifiers/swap/3.cc: Likewise.
197 * testsuite/map/modifiers/try_emplace/1.cc: Likewise.
198 * testsuite/map/operations/1.cc: Likewise.
199 * testsuite/map/operations/count.cc: Likewise.
200 * testsuite/map/operators/1_neg.cc: Likewise.
201 * testsuite/map/operators/2.cc: Likewise.
202 * testsuite/multimap/allocator/copy.cc: Likewise.
203 * testsuite/multimap/allocator/copy_assign.cc: Likewise.
204 * testsuite/multimap/allocator/init-list.cc: Likewise.
205 * testsuite/multimap/allocator/minimal.cc: Likewise.
206 * testsuite/multimap/allocator/move.cc: Likewise.
207 * testsuite/multimap/allocator/move_assign.cc: Likewise.
208 * testsuite/multimap/allocator/swap.cc: Likewise.
209 * testsuite/multimap/capacity/29134.cc: Likewise.
210 * testsuite/multimap/cons/moveable.cc: Likewise.
211 * testsuite/multimap/debug/construct5_neg.cc: Likewise.
212 * testsuite/multimap/debug/move_assign_neg.cc: Likewise.
213 * testsuite/multimap/debug/move_neg.cc: Likewise.
214 * testsuite/multimap/init-list.cc: Likewise.
215 * testsuite/multimap/modifiers/dr130.cc: Likewise.
216 * testsuite/multimap/modifiers/emplace/1.cc: Likewise.
217 * testsuite/multimap/modifiers/extract.cc: Likewise.
218 * testsuite/multimap/modifiers/insert/1.cc: Likewise.
219 * testsuite/multimap/modifiers/insert/2.cc: Likewise.
220 * testsuite/multimap/modifiers/insert/22102.cc: Likewise.
221 * testsuite/multimap/modifiers/insert/3.cc: Likewise.
222 * testsuite/multimap/modifiers/insert/4.cc: Likewise.
223 * testsuite/multimap/modifiers/merge.cc: Likewise.
224 * testsuite/multimap/modifiers/swap/1.cc: Likewise.
225 * testsuite/multimap/modifiers/swap/2.cc: Likewise.
226 * testsuite/multimap/modifiers/swap/3.cc: Likewise.
227 * testsuite/multimap/operations/1.cc: Likewise.
228 * testsuite/multimap/operations/count.cc: Likewise.
229 * testsuite/multiset/allocator/copy.cc: Likewise.
230 * testsuite/multiset/allocator/copy_assign.cc: Likewise.
231 * testsuite/multiset/allocator/init-list.cc: Likewise.
232 * testsuite/multiset/allocator/minimal.cc: Likewise.
233 * testsuite/multiset/allocator/move.cc: Likewise.
234 * testsuite/multiset/allocator/move_assign.cc: Likewise.
235 * testsuite/multiset/allocator/swap.cc: Likewise.
236 * testsuite/multiset/capacity/29134.cc: Likewise.
237 * testsuite/multiset/cons/moveable.cc: Likewise.
238 * testsuite/multiset/debug/construct5_neg.cc: Likewise.
239 * testsuite/multiset/debug/invalidation/2.cc: Likewise.
240 * testsuite/multiset/debug/move_assign_neg.cc: Likewise.
241 * testsuite/multiset/debug/move_neg.cc: Likewise.
242 * testsuite/multiset/init-list.cc: Likewise.
243 * testsuite/multiset/modifiers/dr130.cc: Likewise.
244 * testsuite/multiset/modifiers/emplace/1.cc: Likewise.
245 * testsuite/multiset/modifiers/extract.cc: Likewise.
246 * testsuite/multiset/modifiers/insert/1.cc: Likewise.
247 * testsuite/multiset/modifiers/insert/2.cc: Likewise.
248 * testsuite/multiset/modifiers/insert/22102.cc: Likewise.
249 * testsuite/multiset/modifiers/insert/3.cc: Likewise.
250 * testsuite/multiset/modifiers/insert/4.cc: Likewise.
251 * testsuite/multiset/modifiers/merge.cc: Likewise.
252 * testsuite/multiset/modifiers/swap/1.cc: Likewise.
253 * testsuite/multiset/modifiers/swap/2.cc: Likewise.
254 * testsuite/multiset/modifiers/swap/3.cc: Likewise.
255 * testsuite/multiset/operations/1.cc: Likewise.
256 * testsuite/multiset/operations/count.cc: Likewise.
257 * testsuite/priority_queue/moveable.cc: Likewise.
258 * testsuite/queue/moveable.cc: Likewise.
259 * testsuite/set/allocator/copy.cc: Likewise.
260 * testsuite/set/allocator/copy_assign.cc: Likewise.
261 * testsuite/set/allocator/init-list.cc: Likewise.
262 * testsuite/set/allocator/minimal.cc: Likewise.
263 * testsuite/set/allocator/move.cc: Likewise.
264 * testsuite/set/allocator/move_assign.cc: Likewise.
265 * testsuite/set/allocator/swap.cc: Likewise.
266 * testsuite/set/capacity/29134.cc: Likewise.
267 * testsuite/set/cons/moveable.cc: Likewise.
268 * testsuite/set/debug/construct5_neg.cc: Likewise.
269 * testsuite/set/debug/invalidation/2.cc: Likewise.
270 * testsuite/set/debug/move_assign_neg.cc: Likewise.
271 * testsuite/set/debug/move_neg.cc: Likewise.
272 * testsuite/set/init-list.cc: Likewise.
273 * testsuite/set/modifiers/17948.cc: Likewise.
274 * testsuite/set/modifiers/dr130.cc: Likewise.
275 * testsuite/set/modifiers/emplace/1.cc: Likewise.
276 * testsuite/set/modifiers/extract.cc: Likewise.
277 * testsuite/set/modifiers/insert/1.cc: Likewise.
278 * testsuite/set/modifiers/insert/2.cc: Likewise.
279 * testsuite/set/modifiers/insert/3.cc: Likewise.
280 * testsuite/set/modifiers/merge.cc: Likewise.
281 * testsuite/set/modifiers/swap/1.cc: Likewise.
282 * testsuite/set/modifiers/swap/2.cc: Likewise.
283 * testsuite/set/modifiers/swap/3.cc: Likewise.
284 * testsuite/set/operations/1.cc: Likewise.
285 * testsuite/set/operations/count.cc: Likewise.
286 * testsuite/set/operators/1_neg.cc: Likewise.
287 * testsuite/unordered_map/allocator/copy.cc: Likewise.
288 * testsuite/unordered_map/allocator/copy_assign.cc: Likewise.
289 * testsuite/unordered_map/allocator/minimal.cc: Likewise.
290 * testsuite/unordered_map/allocator/move.cc: Likewise.
291 * testsuite/unordered_map/allocator/move_assign.cc: Likewise.
292 * testsuite/unordered_map/allocator/swap.cc: Likewise.
293 * testsuite/unordered_map/cons/moveable.cc: Likewise.
294 * testsuite/unordered_map/debug/construct5_neg.cc: Likewise.
295 * testsuite/unordered_map/debug/move_assign_neg.cc: Likewise.
296 * testsuite/unordered_map/debug/move_neg.cc: Likewise.
297 * testsuite/unordered_map/dr761.cc: Likewise.
298 * testsuite/unordered_map/erase/1.cc: Likewise.
299 * testsuite/unordered_map/erase/24061-map.cc: Likewise.
300 * testsuite/unordered_map/erase/54276.cc: Likewise.
301 * testsuite/unordered_map/hash_policy/dr1189.cc: Likewise.
302 * testsuite/unordered_map/init-list.cc: Likewise.
303 * testsuite/unordered_map/insert/24061-map.cc: Likewise.
304 * testsuite/unordered_map/insert/57619.C: Likewise.
305 * testsuite/unordered_map/insert/array_syntax.cc: Likewise.
306 * testsuite/unordered_map/insert/array_syntax_move.cc: Likewise.
307 * testsuite/unordered_map/insert/map_range.cc: Likewise.
308 * testsuite/unordered_map/insert/map_single.cc: Likewise.
309 * testsuite/unordered_map/insert/map_single_move-1.cc: Likewise.
310 * testsuite/unordered_map/insert/map_single_move-2.cc: Likewise.
311 * testsuite/unordered_map/modifiers/61667.cc: Likewise.
312 * testsuite/unordered_map/modifiers/emplace.cc: Likewise.
313 * testsuite/unordered_map/modifiers/extract.cc: Likewise.
314 * testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise.
315 * testsuite/unordered_map/modifiers/merge.cc: Likewise.
316 * testsuite/unordered_map/modifiers/reserve.cc: Likewise.
317 * testsuite/unordered_map/modifiers/try_emplace.cc: Likewise.
318 * testsuite/unordered_map/operations/count.cc: Likewise.
319 * testsuite/unordered_map/operators/1.cc: Likewise.
320 * testsuite/unordered_map/operators/2.cc: Likewise.
321 * testsuite/unordered_multimap/allocator/copy.cc: Likewise.
322 * testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise.
323 * testsuite/unordered_multimap/allocator/minimal.cc: Likewise.
324 * testsuite/unordered_multimap/allocator/move.cc: Likewise.
325 * testsuite/unordered_multimap/allocator/move_assign.cc: Likewise.
326 * testsuite/unordered_multimap/allocator/swap.cc: Likewise.
327 * testsuite/unordered_multimap/cons/moveable.cc: Likewise.
328 * testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise.
329 * testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise.
330 * testsuite/unordered_multimap/debug/move_neg.cc: Likewise.
331 * testsuite/unordered_multimap/erase/1.cc: Likewise.
332 * testsuite/unordered_multimap/erase/2.cc: Likewise.
333 * testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise.
334 * testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise.
335 * testsuite/unordered_multimap/erase/54276.cc: Likewise.
336 * testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise.
337 * testsuite/unordered_multimap/init-list.cc: Likewise.
338 * testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise.
339 * testsuite/unordered_multimap/insert/51866.cc: Likewise.
340 * testsuite/unordered_multimap/insert/52476.cc: Likewise.
341 * testsuite/unordered_multimap/insert/53115.cc: Likewise.
342 * testsuite/unordered_multimap/insert/57619.C: Likewise.
343 * testsuite/unordered_multimap/insert/hint.cc: Likewise.
344 * testsuite/unordered_multimap/insert/multimap_range.cc: Likewise.
345 * testsuite/unordered_multimap/insert/multimap_single.cc: Likewise.
346 * testsuite/unordered_multimap/insert/multimap_single_move-1.cc:
347 Likewise.
348 * testsuite/unordered_multimap/insert/multimap_single_move-2.cc:
349 Likewise.
350 * testsuite/unordered_multimap/modifiers/emplace.cc: Likewise.
351 * testsuite/unordered_multimap/modifiers/extract.cc: Likewise.
352 * testsuite/unordered_multimap/modifiers/merge.cc: Likewise.
353 * testsuite/unordered_multimap/modifiers/reserve.cc: Likewise.
354 * testsuite/unordered_multimap/operations/count.cc: Likewise.
355 * testsuite/unordered_multimap/operators/1.cc: Likewise.
356 * testsuite/unordered_multimap/operators/2.cc: Likewise.
357 * testsuite/unordered_multiset/allocator/copy.cc: Likewise.
358 * testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise.
359 * testsuite/unordered_multiset/allocator/minimal.cc: Likewise.
360 * testsuite/unordered_multiset/allocator/move.cc: Likewise.
361 * testsuite/unordered_multiset/allocator/move_assign.cc: Likewise.
362 * testsuite/unordered_multiset/allocator/swap.cc: Likewise.
363 * testsuite/unordered_multiset/cons/copy.cc: Likewise.
364 * testsuite/unordered_multiset/cons/moveable.cc: Likewise.
365 * testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise.
366 * testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise.
367 * testsuite/unordered_multiset/debug/move_neg.cc: Likewise.
368 * testsuite/unordered_multiset/erase/1.cc: Likewise.
369 * testsuite/unordered_multiset/erase/2.cc: Likewise.
370 * testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise.
371 * testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise.
372 * testsuite/unordered_multiset/init-list.cc: Likewise.
373 * testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise.
374 * testsuite/unordered_multiset/insert/51866.cc: Likewise.
375 * testsuite/unordered_multiset/insert/52476.cc: Likewise.
376 * testsuite/unordered_multiset/insert/53115.cc: Likewise.
377 * testsuite/unordered_multiset/insert/hash_policy.cc: Likewise.
378 * testsuite/unordered_multiset/insert/multiset_range.cc: Likewise.
379 * testsuite/unordered_multiset/insert/multiset_single.cc: Likewise.
380 * testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise.
381 * testsuite/unordered_multiset/modifiers/emplace.cc: Likewise.
382 * testsuite/unordered_multiset/modifiers/extract.cc: Likewise.
383 * testsuite/unordered_multiset/modifiers/merge.cc: Likewise.
384 * testsuite/unordered_multiset/modifiers/reserve.cc: Likewise.
385 * testsuite/unordered_multiset/operations/count.cc: Likewise.
386 * testsuite/unordered_multiset/operators/1.cc: Likewise.
387 * testsuite/unordered_set/allocator/copy.cc: Likewise.
388 * testsuite/unordered_set/allocator/copy_assign.cc: Likewise.
389 * testsuite/unordered_set/allocator/ext_ptr.cc: Likewise.
390 * testsuite/unordered_set/allocator/minimal.cc: Likewise.
391 * testsuite/unordered_set/allocator/move.cc: Likewise.
392 * testsuite/unordered_set/allocator/move_assign.cc: Likewise.
393 * testsuite/unordered_set/allocator/swap.cc: Likewise.
394 * testsuite/unordered_set/buckets/swap.cc: Likewise.
395 * testsuite/unordered_set/cons/moveable.cc: Likewise.
396 * testsuite/unordered_set/debug/construct5_neg.cc: Likewise.
397 * testsuite/unordered_set/debug/debug_functions.cc: Likewise.
398 * testsuite/unordered_set/debug/move_assign_neg.cc: Likewise.
399 * testsuite/unordered_set/debug/move_neg.cc: Likewise.
400 * testsuite/unordered_set/erase/1.cc: Likewise.
401 * testsuite/unordered_set/erase/24061-set.cc: Likewise.
402 * testsuite/unordered_set/hash_policy/26132.cc: Likewise.
403 * testsuite/unordered_set/hash_policy/71181.cc: Likewise.
404 * testsuite/unordered_set/hash_policy/dr1189.cc: Likewise.
405 * testsuite/unordered_set/hash_policy/load_factor.cc: Likewise.
406 * testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise.
407 * testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise.
408 * testsuite/unordered_set/hash_policy/rehash.cc: Likewise.
409 * testsuite/unordered_set/init-list.cc: Likewise.
410 * testsuite/unordered_set/insert/24061-set.cc: Likewise.
411 * testsuite/unordered_set/insert/hash_policy.cc: Likewise.
412 * testsuite/unordered_set/insert/move_range.cc: Likewise.
413 * testsuite/unordered_set/insert/set_range.cc: Likewise.
414 * testsuite/unordered_set/insert/set_single.cc: Likewise.
415 * testsuite/unordered_set/insert/set_single_move.cc: Likewise.
416 * testsuite/unordered_set/max_load_factor/robustness.cc: Likewise.
417 * testsuite/unordered_set/modifiers/emplace.cc: Likewise.
418 * testsuite/unordered_set/modifiers/extract.cc: Likewise.
419 * testsuite/unordered_set/modifiers/merge.cc: Likewise.
420 * testsuite/unordered_set/modifiers/reserve.cc: Likewise.
421 * testsuite/unordered_set/modifiers/swap.cc: Likewise.
422 * testsuite/unordered_set/operations/count.cc: Likewise.
423 * testsuite/unordered_set/operators/1.cc: Likewise.
424 * testsuite/vector/allocator/copy.cc: Likewise.
425 * testsuite/vector/allocator/copy_assign.cc: Likewise.
426 * testsuite/vector/allocator/ext_ptr.cc: Likewise.
427 * testsuite/vector/allocator/minimal.cc: Likewise.
428 * testsuite/vector/allocator/move.cc: Likewise.
429 * testsuite/vector/allocator/move_assign.cc: Likewise.
430 * testsuite/vector/allocator/swap.cc: Likewise.
431 * testsuite/vector/bool/6886.cc: Likewise.
432 * testsuite/vector/bool/72847.cc: Likewise.
433 * testsuite/vector/bool/allocator/copy.cc: Likewise.
434 * testsuite/vector/bool/allocator/copy_assign.cc: Likewise.
435 * testsuite/vector/bool/allocator/ext_ptr.cc: Likewise.
436 * testsuite/vector/bool/allocator/move.cc: Likewise.
437 * testsuite/vector/bool/allocator/move_assign.cc: Likewise.
438 * testsuite/vector/bool/allocator/swap.cc: Likewise.
439 * testsuite/vector/bool/capacity/1.cc: Likewise.
440 * testsuite/vector/bool/capacity/29134.cc: Likewise.
441 * testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise.
442 * testsuite/vector/bool/cons/1.cc: Likewise.
443 * testsuite/vector/bool/cons/2.cc: Likewise.
444 * testsuite/vector/bool/modifiers/erase/1.cc: Likewise.
445 * testsuite/vector/bool/modifiers/insert/1.cc: Likewise.
446 * testsuite/vector/bool/modifiers/insert/31370.cc: Likewise.
447 * testsuite/vector/bool/modifiers/swap/1.cc: Likewise.
448 * testsuite/vector/bool/modifiers/swap/2.cc: Likewise.
449 * testsuite/vector/bool/swap.cc: Likewise.
450 * testsuite/vector/capacity/1.cc: Likewise.
451 * testsuite/vector/capacity/2.cc: Likewise.
452 * testsuite/vector/capacity/29134-2.cc: Likewise.
453 * testsuite/vector/capacity/29134.cc: Likewise.
454 * testsuite/vector/capacity/44190.cc: Likewise.
455 * testsuite/vector/capacity/8230.cc: Likewise.
456 * testsuite/vector/capacity/reserve/moveable.cc: Likewise.
457 * testsuite/vector/capacity/reserve/moveable2.cc: Likewise.
458 * testsuite/vector/capacity/resize/1.cc: Likewise.
459 * testsuite/vector/capacity/resize/moveable.cc: Likewise.
460 * testsuite/vector/capacity/resize/moveable2.cc: Likewise.
461 * testsuite/vector/capacity/resize/resize_size.cc: Likewise.
462 * testsuite/vector/capacity/shrink_to_fit.cc: Likewise.
463 * testsuite/vector/capacity/shrink_to_fit2.cc: Likewise.
464 * testsuite/vector/cons/3.cc: Likewise.
465 * testsuite/vector/cons/4.cc: Likewise.
466 * testsuite/vector/cons/cons_size.cc: Likewise.
467 * testsuite/vector/cons/moveable.cc: Likewise.
468 * testsuite/vector/data_access/1.cc: Likewise.
469 * testsuite/vector/debug/debug_functions.cc: Likewise.
470 * testsuite/vector/debug/move_assign_neg.cc: Likewise.
471 * testsuite/vector/debug/move_neg.cc: Likewise.
472 * testsuite/vector/debug/multithreaded_swap.cc: Likewise.
473 * testsuite/vector/element_access/1.cc: Likewise.
474 * testsuite/vector/ext_pointer/citerators.cc: Likewise.
475 * testsuite/vector/ext_pointer/data_access.cc: Likewise.
476 * testsuite/vector/ext_pointer/modifiers/element.cc: Likewise.
477 * testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise.
478 * testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise.
479 * testsuite/vector/ext_pointer/resize.cc: Likewise.
480 * testsuite/vector/modifiers/1.cc: Likewise.
481 * testsuite/vector/modifiers/2.cc: Likewise.
482 * testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise.
483 * testsuite/vector/modifiers/erase/1.cc: Likewise.
484 * testsuite/vector/modifiers/erase/moveable.cc: Likewise.
485 * testsuite/vector/modifiers/insert/1.cc: Likewise.
486 * testsuite/vector/modifiers/insert/self_insert.cc: Likewise.
487 * testsuite/vector/modifiers/moveable.cc: Likewise.
488 * testsuite/vector/modifiers/moveable2.cc: Likewise.
489 * testsuite/vector/modifiers/push_back/49836.cc: Likewise.
490 * testsuite/vector/modifiers/swap/1.cc: Likewise.
491 * testsuite/vector/modifiers/swap/2.cc: Likewise.
492 * testsuite/vector/modifiers/swap/3.cc: Likewise.
493 * testsuite/vector/zero_sized_allocations.cc: Likewise.
494
594ef205
JW
4952016-10-17 Jonathan Wakely <jwakely@redhat.com>
496
a2284544
JW
497 PR libstdc++/77998
498 * include/std/future (__future_base::_Deferred_state)
499 (__future_base::_Async_state_impl): Use decltype to deduce return
500 type, instead of _Invoker::result_type.
501 * include/std/thread (thread::_Invoker::operator()): Likewise.
502 (thread::_Invoker::result_type): Remove.
503
74cf9664
JW
504 PR libstdc++/77987
505 * include/bits/unique_ptr.h (unique_ptr<T[], D>::reset<U>(U)): Copy
506 value to pointer of the correct type to swap, to support conversions
507 allowed by LWG 2118 / N4089.
508 * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Move test for
509 incompatible deleters from ...
510 * testsuite/20_util/unique_ptr/assign/cv_qual.cc: ... here.
511 * testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Move tests for
512 incompatible pointers to ...
513 * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: ... here. Move
514 destructor definition to base class. Test for invalid derived-to-base
515 conversion.
516
594ef205
JW
517 * doc/xml/manual/status_cxx2017.xml: Update status.
518 * doc/html/*: Regenerate.
519 * include/bits/deque.tcc (deque::emplace_front, deque::emplace_back):
520 Return a reference in C++17 mode.
521 * include/bits/forward_list.h (forward_list::emplace_front): Likewise.
522 * include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise.
523 * include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back):
524 Likewise.
525 * include/bits/stl_list.h (list::emplace_front, list::emplace_back):
526 Likewise.
527 * include/bits/stl_queue.h (queue::emplace): Likewise.
528 * include/bits/stl_stack.h (stack::emplace): Likewise.
529 * include/bits/stl_vector.h (vector::emplace_back): Likewise.
530 * include/bits/vector.tcc (vector::emplace_back): Likewise.
531 * include/debug/deque (__gnu_debug::deque::emplace_front)
532 (__gnu_debug::deque::emplace_back): Likewise.
533 * include/debug/vector (__gnu_debug::vector::emplace_back): Likewise.
534 * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
535 New.
536 * testsuite/23_containers/forward_list/modifiers/
537 emplace_cxx17_return.cc: New.
538 * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New.
539 * testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New.
540 * testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New.
541 * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New.
542 * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
543 New.
544
236c57d1
PC
5452016-10-16 Paolo Carlini <paolo.carlini@oracle.com>
546
547 * testsuite/22_locale/classification/isblank.cc: Remove 'test'
548 variables.
549 * testsuite/22_locale/codecvt/always_noconv/char/1.cc: Likewise.
550 * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Likewise.
551 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
552 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
553 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
554 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Likewise.
555 * testsuite/22_locale/codecvt/encoding/char/1.cc: Likewise.
556 * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc: Likewise.
557 * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
558 * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
559 * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.
560 * testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
561 * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Likewise.
562 * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
563 * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
564 * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
565 * testsuite/22_locale/codecvt/in/wchar_t/5.cc: Likewise.
566 * testsuite/22_locale/codecvt/in/wchar_t/6.cc: Likewise.
567 * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise.
568 * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
569 * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
570 * testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
571 * testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
572 * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Likewise.
573 * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.
574 * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.
575 * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
576 * testsuite/22_locale/codecvt/length/wchar_t/5.cc: Likewise.
577 * testsuite/22_locale/codecvt/length/wchar_t/6.cc: Likewise.
578 * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.
579 * testsuite/22_locale/codecvt/max_length/char/1.cc: Likewise.
580 * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Likewise.
581 * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.
582 * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.
583 * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.
584 * testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
585 * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Likewise.
586 * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.
587 * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.
588 * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
589 * testsuite/22_locale/codecvt/out/wchar_t/5.cc: Likewise.
590 * testsuite/22_locale/codecvt/out/wchar_t/6.cc: Likewise.
591 * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.
592 * testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
593 * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
594 * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
595 * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
596 * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
597 * testsuite/22_locale/collate/compare/char/1.cc: Likewise.
598 * testsuite/22_locale/collate/compare/char/2.cc: Likewise.
599 * testsuite/22_locale/collate/compare/char/3.cc: Likewise.
600 * testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.
601 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.
602 * testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.
603 * testsuite/22_locale/collate/hash/char/1.cc: Likewise.
604 * testsuite/22_locale/collate/hash/char/2.cc: Likewise.
605 * testsuite/22_locale/collate/hash/wchar_t/1.cc: Likewise.
606 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.
607 * testsuite/22_locale/collate/transform/char/2.cc: Likewise.
608 * testsuite/22_locale/collate/transform/char/28277.cc: Likewise.
609 * testsuite/22_locale/collate/transform/char/3.cc: Likewise.
610 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise.
611 * testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
612 * testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise.
613 * testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
614 * testsuite/22_locale/ctype/cons/char/1.cc: Likewise.
615 * testsuite/22_locale/ctype/is/char/1.cc: Likewise.
616 * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
617 * testsuite/22_locale/ctype/is/char/3.cc: Likewise.
618 * testsuite/22_locale/ctype/is/char/9858.cc: Likewise.
619 * testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
620 * testsuite/22_locale/ctype/is/wchar_t/11740.cc: Likewise.
621 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
622 * testsuite/22_locale/ctype/narrow/char/1.cc: Likewise.
623 * testsuite/22_locale/ctype/narrow/char/19955.cc: Likewise.
624 * testsuite/22_locale/ctype/narrow/char/2.cc: Likewise.
625 * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Likewise.
626 * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Likewise.
627 * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise.
628 * testsuite/22_locale/ctype/scan/char/1.cc: Likewise.
629 * testsuite/22_locale/ctype/scan/wchar_t/1.cc: Likewise.
630 * testsuite/22_locale/ctype/to/char/1.cc: Likewise.
631 * testsuite/22_locale/ctype/to/wchar_t/1.cc: Likewise.
632 * testsuite/22_locale/ctype/widen/char/1.cc: Likewise.
633 * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Likewise.
634 * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.
635 * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.
636 * testsuite/22_locale/ctype_base/11844.cc: Likewise.
637 * testsuite/22_locale/facet/1.cc: Likewise.
638 * testsuite/22_locale/facet/2.cc: Likewise.
639 * testsuite/22_locale/facet/25421.cc: Likewise.
640 * testsuite/22_locale/global_templates/1.cc: Likewise.
641 * testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
642 Likewise.
643 * testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
644 Likewise.
645 * testsuite/22_locale/locale/13630.cc: Likewise.
646 * testsuite/22_locale/locale/cons/12352.cc: Likewise.
647 * testsuite/22_locale/locale/cons/12438.cc: Likewise.
648 * testsuite/22_locale/locale/cons/2.cc: Likewise.
649 * testsuite/22_locale/locale/cons/29217.cc: Likewise.
650 * testsuite/22_locale/locale/cons/38365.cc: Likewise.
651 * testsuite/22_locale/locale/cons/38368.cc: Likewise.
652 * testsuite/22_locale/locale/cons/4.cc: Likewise.
653 * testsuite/22_locale/locale/cons/40184.cc: Likewise.
654 * testsuite/22_locale/locale/cons/5.cc: Likewise.
655 * testsuite/22_locale/locale/cons/6.cc: Likewise.
656 * testsuite/22_locale/locale/cons/7.cc: Likewise.
657 * testsuite/22_locale/locale/cons/7222-c.cc: Likewise.
658 * testsuite/22_locale/locale/cons/7222-env.cc: Likewise.
659 * testsuite/22_locale/locale/cons/8.cc: Likewise.
660 * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
661 * testsuite/22_locale/locale/global_locale_objects/1.cc: Likewise.
662 * testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
663 * testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
664 * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
665 * testsuite/22_locale/locale/operations/1.cc: Likewise.
666 * testsuite/22_locale/locale/operations/2.cc: Likewise.
667 * testsuite/22_locale/messages/13631.cc: Likewise.
668 * testsuite/22_locale/messages/members/char/1.cc: Likewise.
669 * testsuite/22_locale/messages/members/char/2.cc: Likewise.
670 * testsuite/22_locale/messages/members/char/3.cc: Likewise.
671 * testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
672 * testsuite/22_locale/money_get/get/char/1.cc: Likewise.
673 * testsuite/22_locale/money_get/get/char/10.cc: Likewise.
674 * testsuite/22_locale/money_get/get/char/11.cc: Likewise.
675 * testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
676 * testsuite/22_locale/money_get/get/char/12.cc: Likewise.
677 * testsuite/22_locale/money_get/get/char/13.cc: Likewise.
678 * testsuite/22_locale/money_get/get/char/14.cc: Likewise.
679 * testsuite/22_locale/money_get/get/char/15.cc: Likewise.
680 * testsuite/22_locale/money_get/get/char/16.cc: Likewise.
681 * testsuite/22_locale/money_get/get/char/17.cc: Likewise.
682 * testsuite/22_locale/money_get/get/char/18.cc: Likewise.
683 * testsuite/22_locale/money_get/get/char/19.cc: Likewise.
684 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
685 * testsuite/22_locale/money_get/get/char/22131.cc: Likewise.
686 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
687 * testsuite/22_locale/money_get/get/char/38399.cc: Likewise.
688 * testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
689 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
690 * testsuite/22_locale/money_get/get/char/5.cc: Likewise.
691 * testsuite/22_locale/money_get/get/char/6.cc: Likewise.
692 * testsuite/22_locale/money_get/get/char/7.cc: Likewise.
693 * testsuite/22_locale/money_get/get/char/8.cc: Likewise.
694 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
695 * testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.
696 * testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.
697 * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
698 * testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.
699 * testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.
700 * testsuite/22_locale/money_get/get/wchar_t/14.cc: Likewise.
701 * testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.
702 * testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.
703 * testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.
704 * testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.
705 * testsuite/22_locale/money_get/get/wchar_t/19.cc: Likewise.
706 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
707 * testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
708 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
709 * testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
710 * testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
711 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
712 * testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
713 * testsuite/22_locale/money_get/get/wchar_t/6.cc: Likewise.
714 * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
715 * testsuite/22_locale/money_get/get/wchar_t/8.cc: Likewise.
716 * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
717 * testsuite/22_locale/money_put/put/char/12971.cc: Likewise.
718 * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
719 * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
720 * testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
721 * testsuite/22_locale/money_put/put/char/4.cc: Likewise.
722 * testsuite/22_locale/money_put/put/char/5.cc: Likewise.
723 * testsuite/22_locale/money_put/put/char/6.cc: Likewise.
724 * testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.
725 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
726 * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
727 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
728 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
729 * testsuite/22_locale/money_put/put/wchar_t/39168.cc: Likewise.
730 * testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
731 * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
732 * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
733 * testsuite/22_locale/moneypunct/40712.cc: Likewise.
734 * testsuite/22_locale/moneypunct/members/char/1.cc: Likewise.
735 * testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
736 * testsuite/22_locale/moneypunct/members/wchar_t/1.cc: Likewise.
737 * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.
738 * testsuite/22_locale/moneypunct/requirements/false/intl.cc: Likewise.
739 * testsuite/22_locale/moneypunct/requirements/true/intl.cc: Likewise.
740 * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
741 * testsuite/22_locale/num_get/get/char/1.cc: Likewise.
742 * testsuite/22_locale/num_get/get/char/10.cc: Likewise.
743 * testsuite/22_locale/num_get/get/char/11.cc: Likewise.
744 * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
745 * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
746 * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
747 * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
748 * testsuite/22_locale/num_get/get/char/16.cc: Likewise.
749 * testsuite/22_locale/num_get/get/char/2.cc: Likewise.
750 * testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
751 * testsuite/22_locale/num_get/get/char/23953.cc: Likewise.
752 * testsuite/22_locale/num_get/get/char/3.cc: Likewise.
753 * testsuite/22_locale/num_get/get/char/37958.cc: Likewise.
754 * testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
755 * testsuite/22_locale/num_get/get/char/39802.cc: Likewise.
756 * testsuite/22_locale/num_get/get/char/4.cc: Likewise.
757 * testsuite/22_locale/num_get/get/char/5.cc: Likewise.
758 * testsuite/22_locale/num_get/get/char/6.cc: Likewise.
759 * testsuite/22_locale/num_get/get/char/7.cc: Likewise.
760 * testsuite/22_locale/num_get/get/char/8.cc: Likewise.
761 * testsuite/22_locale/num_get/get/char/9.cc: Likewise.
762 * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
763 * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
764 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
765 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
766 * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
767 * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
768 * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
769 * testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
770 * testsuite/22_locale/num_get/get/wchar_t/2.cc: Likewise.
771 * testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
772 * testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
773 * testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.
774 * testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
775 * testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
776 * testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
777 * testsuite/22_locale/num_get/get/wchar_t/4.cc: Likewise.
778 * testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.
779 * testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.
780 * testsuite/22_locale/num_get/get/wchar_t/7.cc: Likewise.
781 * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
782 * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
783 * testsuite/22_locale/num_put/put/char/1.cc: Likewise.
784 * testsuite/22_locale/num_put/put/char/10.cc: Likewise.
785 * testsuite/22_locale/num_put/put/char/11.cc: Likewise.
786 * testsuite/22_locale/num_put/put/char/12.cc: Likewise.
787 * testsuite/22_locale/num_put/put/char/14220.cc: Likewise.
788 * testsuite/22_locale/num_put/put/char/15565.cc: Likewise.
789 * testsuite/22_locale/num_put/put/char/2.cc: Likewise.
790 * testsuite/22_locale/num_put/put/char/20909.cc: Likewise.
791 * testsuite/22_locale/num_put/put/char/20914.cc: Likewise.
792 * testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
793 * testsuite/22_locale/num_put/put/char/3.cc: Likewise.
794 * testsuite/22_locale/num_put/put/char/38196.cc: Likewise.
795 * testsuite/22_locale/num_put/put/char/38210.cc: Likewise.
796 * testsuite/22_locale/num_put/put/char/4.cc: Likewise.
797 * testsuite/22_locale/num_put/put/char/5.cc: Likewise.
798 * testsuite/22_locale/num_put/put/char/6.cc: Likewise.
799 * testsuite/22_locale/num_put/put/char/7.cc: Likewise.
800 * testsuite/22_locale/num_put/put/char/8.cc: Likewise.
801 * testsuite/22_locale/num_put/put/char/9.cc: Likewise.
802 * testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise.
803 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
804 * testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
805 * testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
806 * testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
807 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
808 * testsuite/22_locale/num_put/put/wchar_t/15565.cc: Likewise.
809 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
810 * testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
811 * testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
812 * testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.
813 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
814 * testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
815 * testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
816 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
817 * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
818 * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
819 * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
820 * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
821 * testsuite/22_locale/num_put/put/wchar_t/9.cc: Likewise.
822 * testsuite/22_locale/numpunct/members/char/1.cc: Likewise.
823 * testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
824 * testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
825 * testsuite/22_locale/numpunct/members/char/cache_1.cc: Likewise.
826 * testsuite/22_locale/numpunct/members/char/cache_2.cc: Likewise.
827 * testsuite/22_locale/numpunct/members/pod/1.cc: Likewise.
828 * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Likewise.
829 * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
830 * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: Likewise.
831 * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: Likewise.
832 * testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
833 * testsuite/22_locale/time_get/date_order/char/1.cc: Likewise.
834 * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Likewise.
835 * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
836 * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
837 * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
838 * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
839 * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
840 * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
841 * testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
842 * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
843 * testsuite/22_locale/time_get/get_date/char/26701.cc: Likewise.
844 * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
845 * testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
846 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
847 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
848 * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
849 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
850 * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
851 * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
852 * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.
853 * testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
854 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
855 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
856 * testsuite/22_locale/time_get/get_monthname/char/3.cc: Likewise.
857 * testsuite/22_locale/time_get/get_monthname/char/4.cc: Likewise.
858 * testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
859 * testsuite/22_locale/time_get/get_monthname/char/6.cc: Likewise.
860 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
861 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
862 * testsuite/22_locale/time_get/get_monthname/wchar_t/3.cc: Likewise.
863 * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: Likewise.
864 * testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
865 * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
866 * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
867 * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
868 * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
869 * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
870 * testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
871 * testsuite/22_locale/time_get/get_time/char/6.cc: Likewise.
872 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
873 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
874 * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
875 * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
876 * testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
877 * testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
878 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
879 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
880 * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
881 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Likewise.
882 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
883 * testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
884 * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
885 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
886 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
887 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
888 * testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
889 * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
890 * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
891 * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
892 * testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
893 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
894 * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
895 * testsuite/22_locale/time_get/get_year/wchar_t/5.cc: Likewise.
896 * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
897 * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
898 * testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
899 * testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
900 * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
901 * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
902 * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
903 * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
904 * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
905 * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
906 * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
907 * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
908 * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
909 * testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.
910 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
911 * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
912 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
913 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
914 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
915 * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
916 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
917 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
918 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
919 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
920 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
921 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
922 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
923 * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
924 * testsuite/30_threads/async/42819.cc: Likewise.
925 * testsuite/30_threads/async/any.cc: Likewise.
926 * testsuite/30_threads/async/async.cc: Likewise.
927 * testsuite/30_threads/async/except.cc: Likewise.
928 * testsuite/30_threads/async/launch.cc: Likewise.
929 * testsuite/30_threads/async/sync.cc: Likewise.
930 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
931 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
932 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
933 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
934 * testsuite/30_threads/condition_variable/members/3.cc: Likewise.
935 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
936 * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
937 * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
938 * testsuite/30_threads/future/members/45133.cc: Likewise.
939 * testsuite/30_threads/future/members/get.cc: Likewise.
940 * testsuite/30_threads/future/members/get2.cc: Likewise.
941 * testsuite/30_threads/future/members/share.cc: Likewise.
942 * testsuite/30_threads/future/members/valid.cc: Likewise.
943 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
944 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
945 * testsuite/30_threads/lock/1.cc: Likewise.
946 * testsuite/30_threads/lock/2.cc: Likewise.
947 * testsuite/30_threads/lock/3.cc: Likewise.
948 * testsuite/30_threads/lock/4.cc: Likewise.
949 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
950 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
951 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
952 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
953 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
954 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
955 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
956 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
957 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
958 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
959 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
960 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
961 * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
962 * testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
963 Likewise.
964 * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
965 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
966 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
967 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
968 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
969 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
970 * testsuite/30_threads/promise/cons/move.cc: Likewise.
971 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
972 * testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
973 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
974 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
975 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
976 * testsuite/30_threads/promise/members/swap.cc: Likewise.
977 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
978 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
979 Likewise.
980 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
981 * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
982 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
983 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
984 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
985 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
986 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
987 Likewise.
988 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
989 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
990 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
991 Likewise.
992 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
993 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
994 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
995 Likewise.
996 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
997 Likewise.
998 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
999 Likewise.
1000 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
1001 Likewise.
1002 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
1003 Likewise.
1004 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
1005 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
1006 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
1007 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1008 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
1009 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
1010 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
1011 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1012 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1013 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1014 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1015 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1016 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1017 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1018 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1019 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1020 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1021 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1022 * testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
1023 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
1024 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
1025 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1026 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
1027 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1028 * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
1029 * testsuite/30_threads/this_thread/1.cc: Likewise.
1030 * testsuite/30_threads/this_thread/2.cc: Likewise.
1031 * testsuite/30_threads/this_thread/3.cc: Likewise.
1032 * testsuite/30_threads/this_thread/4.cc: Likewise.
1033 * testsuite/30_threads/this_thread/60421.cc: Likewise.
1034 * testsuite/30_threads/thread/cons/1.cc: Likewise.
1035 * testsuite/30_threads/thread/cons/2.cc: Likewise.
1036 * testsuite/30_threads/thread/cons/3.cc: Likewise.
1037 * testsuite/30_threads/thread/cons/4.cc: Likewise.
1038 * testsuite/30_threads/thread/cons/5.cc: Likewise.
1039 * testsuite/30_threads/thread/cons/6.cc: Likewise.
1040 * testsuite/30_threads/thread/cons/7.cc: Likewise.
1041 * testsuite/30_threads/thread/cons/8.cc: Likewise.
1042 * testsuite/30_threads/thread/cons/9.cc: Likewise.
1043 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
1044 * testsuite/30_threads/thread/members/1.cc: Likewise.
1045 * testsuite/30_threads/thread/members/2.cc: Likewise.
1046 * testsuite/30_threads/thread/members/3.cc: Likewise.
1047 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
1048 * testsuite/30_threads/thread/swap/1.cc: Likewise.
1049 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
1050 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
1051 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
1052 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
1053 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
1054 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
1055 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
1056 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
1057 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
1058 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
1059 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
1060 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1061 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
1062 * testsuite/30_threads/try_lock/1.cc: Likewise.
1063 * testsuite/30_threads/try_lock/2.cc: Likewise.
1064 * testsuite/30_threads/try_lock/3.cc: Likewise.
1065 * testsuite/30_threads/try_lock/4.cc: Likewise.
1066 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
1067 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
1068 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
1069 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
1070 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1071 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1072 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
1073 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
1074 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1075 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1076 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1077 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
1078 not_shared.cc: Likewise.
1079 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
1080 not_shared2.cc: Likewise.
1081 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
1082 not_shared3.cc: Likewise.
1083 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
1084 shared.cc: Likewise.
1085 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
1086 still_shared.cc: Likewise.
1087 * testsuite/tr1/2_general_utilities/shared_ptr/assign/assign.cc:
1088 Likewise.
1089 * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
1090 Likewise.
1091 * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
1092 Likewise.
1093 * testsuite/tr1/2_general_utilities/shared_ptr/assign/
1094 auto_ptr_rvalue_neg.cc: Likewise.
1095 * testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr.cc:
1096 Likewise.
1097 * testsuite/tr1/2_general_utilities/shared_ptr/assign/
1098 shared_ptr_neg.cc: Likewise.
1099 * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
1100 Likewise.
1101 * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
1102 Likewise.
1103 * testsuite/tr1/2_general_utilities/shared_ptr/cons/copy.cc: Likewise.
1104 * testsuite/tr1/2_general_utilities/shared_ptr/cons/default.cc:
1105 Likewise.
1106 * testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc:
1107 Likewise.
1108 * testsuite/tr1/2_general_utilities/shared_ptr/cons/weak_ptr.cc:
1109 Likewise.
1110 * testsuite/tr1/2_general_utilities/shared_ptr/dest/dest.cc: Likewise.
1111 * testsuite/tr1/2_general_utilities/shared_ptr/misc/24595.cc: Likewise.
1112 * testsuite/tr1/2_general_utilities/shared_ptr/misc/io.cc: Likewise.
1113 * testsuite/tr1/2_general_utilities/shared_ptr/misc/swap.cc: Likewise.
1114 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset.cc:
1115 Likewise.
1116 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1117 Likewise.
1118 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap.cc:
1119 Likewise.
1120 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap_neg.cc:
1121 Likewise.
1122 * testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
1123 Likewise.
1124 * testsuite/tr1/2_general_utilities/shared_ptr/observers/get.cc:
1125 Likewise.
1126 * testsuite/tr1/2_general_utilities/shared_ptr/observers/unique.cc:
1127 Likewise.
1128 * testsuite/tr1/2_general_utilities/shared_ptr/observers/use_count.cc:
1129 Likewise.
1130 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1131 default_weaktoshared.cc: Likewise.
1132 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1133 mutex_weaktoshared.cc: Likewise.
1134 * testsuite/tr1/3_function_objects/bind/all_bound.cc: Likewise.
1135 * testsuite/tr1/3_function_objects/bind/mixed.cc: Likewise.
1136 * testsuite/tr1/3_function_objects/bind/nested.cc: Likewise.
1137 * testsuite/tr1/3_function_objects/bind/placeholders.cc: Likewise.
1138 * testsuite/tr1/3_function_objects/bind/ref.cc: Likewise.
1139 * testsuite/tr1/3_function_objects/function/1.cc: Likewise.
1140 * testsuite/tr1/3_function_objects/function/2.cc: Likewise.
1141 * testsuite/tr1/3_function_objects/function/3.cc: Likewise.
1142 * testsuite/tr1/3_function_objects/function/4.cc: Likewise.
1143 * testsuite/tr1/3_function_objects/function/5.cc: Likewise.
1144 * testsuite/tr1/3_function_objects/function/6.cc: Likewise.
1145 * testsuite/tr1/3_function_objects/function/7.cc: Likewise.
1146 * testsuite/tr1/3_function_objects/function/8.cc: Likewise.
1147 * testsuite/tr1/3_function_objects/function/9.cc: Likewise.
1148 * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
1149 Likewise.
1150 * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
1151 Likewise.
1152 * testsuite/tr1/3_function_objects/result_of.cc: Likewise.
1153 * testsuite/tr1/4_metaprogramming/add_const/value.cc: Likewise.
1154 * testsuite/tr1/4_metaprogramming/add_cv/value.cc: Likewise.
1155 * testsuite/tr1/4_metaprogramming/add_pointer/value.cc: Likewise.
1156 * testsuite/tr1/4_metaprogramming/add_reference/value.cc: Likewise.
1157 * testsuite/tr1/4_metaprogramming/add_volatile/value.cc: Likewise.
1158 * testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: Likewise.
1159 * testsuite/tr1/4_metaprogramming/alignment_of/value.cc: Likewise.
1160 * testsuite/tr1/4_metaprogramming/extent/value.cc: Likewise.
1161 * testsuite/tr1/4_metaprogramming/has_nothrow_assign/value.cc: Likewise.
1162 * testsuite/tr1/4_metaprogramming/has_nothrow_constructor/value.cc:
1163 Likewise.
1164 * testsuite/tr1/4_metaprogramming/has_nothrow_copy/value.cc: Likewise.
1165 * testsuite/tr1/4_metaprogramming/has_trivial_assign/value.cc: Likewise.
1166 * testsuite/tr1/4_metaprogramming/has_trivial_constructor/value.cc:
1167 Likewise.
1168 * testsuite/tr1/4_metaprogramming/has_trivial_copy/value.cc: Likewise.
1169 * testsuite/tr1/4_metaprogramming/has_trivial_destructor/value.cc:
1170 Likewise.
1171 * testsuite/tr1/4_metaprogramming/has_virtual_destructor/value.cc:
1172 Likewise.
1173 * testsuite/tr1/4_metaprogramming/integral_constant/
1174 static_definition.cc: Likewise.
1175 * testsuite/tr1/4_metaprogramming/integral_constant/
1176 true_false_value.cc: Likewise.
1177 * testsuite/tr1/4_metaprogramming/is_abstract/value.cc: Likewise.
1178 * testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc: Likewise.
1179 * testsuite/tr1/4_metaprogramming/is_array/value.cc: Likewise.
1180 * testsuite/tr1/4_metaprogramming/is_base_of/value.cc: Likewise.
1181 * testsuite/tr1/4_metaprogramming/is_class/value.cc: Likewise.
1182 * testsuite/tr1/4_metaprogramming/is_compound/value.cc: Likewise.
1183 * testsuite/tr1/4_metaprogramming/is_const/value.cc: Likewise.
1184 * testsuite/tr1/4_metaprogramming/is_convertible/value.cc: Likewise.
1185 * testsuite/tr1/4_metaprogramming/is_empty/value.cc: Likewise.
1186 * testsuite/tr1/4_metaprogramming/is_enum/24808.cc: Likewise.
1187 * testsuite/tr1/4_metaprogramming/is_enum/value.cc: Likewise.
1188 * testsuite/tr1/4_metaprogramming/is_floating_point/value.cc: Likewise.
1189 * testsuite/tr1/4_metaprogramming/is_function/24808.cc: Likewise.
1190 * testsuite/tr1/4_metaprogramming/is_function/value.cc: Likewise.
1191 * testsuite/tr1/4_metaprogramming/is_fundamental/value.cc: Likewise.
1192 * testsuite/tr1/4_metaprogramming/is_integral/value.cc: Likewise.
1193 * testsuite/tr1/4_metaprogramming/is_member_function_pointer/value.cc:
1194 Likewise.
1195 * testsuite/tr1/4_metaprogramming/is_member_object_pointer/value.cc:
1196 Likewise.
1197 * testsuite/tr1/4_metaprogramming/is_member_pointer/value.cc: Likewise.
1198 * testsuite/tr1/4_metaprogramming/is_object/24808.cc: Likewise.
1199 * testsuite/tr1/4_metaprogramming/is_object/value.cc: Likewise.
1200 * testsuite/tr1/4_metaprogramming/is_pod/value.cc: Likewise.
1201 * testsuite/tr1/4_metaprogramming/is_pointer/value.cc: Likewise.
1202 * testsuite/tr1/4_metaprogramming/is_polymorphic/value.cc: Likewise.
1203 * testsuite/tr1/4_metaprogramming/is_reference/value.cc: Likewise.
1204 * testsuite/tr1/4_metaprogramming/is_same/value.cc: Likewise.
1205 * testsuite/tr1/4_metaprogramming/is_scalar/value.cc: Likewise.
1206 * testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
1207 * testsuite/tr1/4_metaprogramming/is_union/value.cc: Likewise.
1208 * testsuite/tr1/4_metaprogramming/is_unsigned/value.cc: Likewise.
1209 * testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
1210 * testsuite/tr1/4_metaprogramming/is_volatile/value.cc: Likewise.
1211 * testsuite/tr1/4_metaprogramming/rank/value.cc: Likewise.
1212 * testsuite/tr1/4_metaprogramming/remove_all_extents/value.cc: Likewise.
1213 * testsuite/tr1/4_metaprogramming/remove_const/value.cc: Likewise.
1214 * testsuite/tr1/4_metaprogramming/remove_cv/value.cc: Likewise.
1215 * testsuite/tr1/4_metaprogramming/remove_extent/value.cc: Likewise.
1216 * testsuite/tr1/4_metaprogramming/remove_pointer/value.cc: Likewise.
1217 * testsuite/tr1/4_metaprogramming/remove_reference/value.cc: Likewise.
1218 * testsuite/tr1/4_metaprogramming/remove_volatile/value.cc: Likewise.
1219 * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
1220 equal.cc: Likewise.
1221 * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
1222 not_equal.cc: Likewise.
1223 * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
1224 serialize.cc: Likewise.
1225 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
1226 cons/default.cc: Likewise.
1227 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
1228 cons/gen1.cc: Likewise.
1229 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
1230 operators/equal.cc: Likewise.
1231 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
1232 operators/not_equal.cc: Likewise.
1233 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
1234 operators/serialize.cc: Likewise.
1235 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
1236 cons/default.cc: Likewise.
1237 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
1238 cons/gen1.cc: Likewise.
1239 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
1240 operators/equal.cc: Likewise.
1241 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
1242 operators/not_equal.cc: Likewise.
1243 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
1244 operators/serialize.cc: Likewise.
1245 * testsuite/tr1/5_numerical_facilities/random/minstd_rand.cc: Likewise.
1246 * testsuite/tr1/5_numerical_facilities/random/minstd_rand0.cc: Likewise.
1247 * testsuite/tr1/5_numerical_facilities/random/mt19937.cc: Likewise.
1248 * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
1249 default.cc: Likewise.
1250 * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
1251 token.cc: Likewise.
1252 * testsuite/tr1/5_numerical_facilities/random/ranlux3.cc: Likewise.
1253 * testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc: Likewise.
1254 * testsuite/tr1/5_numerical_facilities/random/ranlux4.cc: Likewise.
1255 * testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc
1256 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
1257 cons/default.cc: Likewise.
1258 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
1259 cons/gen1.cc: Likewise.
1260 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
1261 operators/equal.cc: Likewise.
1262 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
1263 operators/not_equal.cc: Likewise.
1264 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
1265 operators/serialize.cc: Likewise.
1266 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
1267 cons/default.cc: Likewise.
1268 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
1269 cons/gen1.cc: Likewise.
1270 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
1271 operators/equal.cc: Likewise.
1272 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
1273 operators/not_equal.cc: Likewise.
1274 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
1275 operators/serialize.cc: Likewise.
1276 * testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
1277 Likewise.
1278 * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
1279 default.cc: Likewise.
1280 * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
1281 range.cc: Likewise.
1282 * testsuite/tr1/5_numerical_facilities/random/xor_combine/cons/
1283 default.cc: Likewise.
1284 * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
1285 equal.cc: Likewise.
1286 * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
1287 not_equal.cc: Likewise.
1288 * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
1289 serialize.cc: Likewise.
1290 * testsuite/tr1/5_numerical_facilities/special_functions/
1291 08_cyl_bessel_i/check_value.cc: Likewise.
1292 * testsuite/tr1/5_numerical_facilities/special_functions/
1293 08_cyl_bessel_i/pr56216.cc: Likewise.
1294 * testsuite/tr1/5_numerical_facilities/special_functions/
1295 09_cyl_bessel_j/check_value.cc: Likewise.
1296 * testsuite/tr1/5_numerical_facilities/special_functions/
1297 10_cyl_bessel_k/check_value.cc: Likewise.
1298 * testsuite/tr1/5_numerical_facilities/special_functions/
1299 11_cyl_neumann/check_value.cc: Likewise.
1300 * testsuite/tr1/5_numerical_facilities/special_functions/
1301 16_hermite/check_value.cc: Likewise.
1302 * testsuite/tr1/5_numerical_facilities/special_functions/
1303 21_sph_bessel/check_value.cc: Likewise.
1304 * testsuite/tr1/5_numerical_facilities/special_functions/
1305 23_sph_neumann/check_value.cc: Likewise.
1306 * testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
1307 * testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
1308 * testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
1309 * testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
1310 Likewise.
1311 * testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
1312 Likewise.
1313 * testsuite/tr1/6_containers/array/comparison_operators/
1314 greater_or_equal.cc: Likewise.
1315 * testsuite/tr1/6_containers/array/comparison_operators/less.cc:
1316 Likewise.
1317 * testsuite/tr1/6_containers/array/comparison_operators/
1318 less_or_equal.cc: Likewise.
1319 * testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
1320 Likewise.
1321 * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
1322 Likewise.
1323 * testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
1324 * testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
1325 * testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
1326 * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
1327 Likewise.
1328 * testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
1329 * testsuite/tr1/6_containers/array/requirements/contiguous.cc: Likewise.
1330 * testsuite/tr1/6_containers/array/requirements/member_swap.cc:
1331 Likewise.
1332 * testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
1333 Likewise.
1334 * testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
1335 Likewise.
1336 * testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
1337 * testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
1338 Likewise.
1339 * testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
1340 Likewise.
1341 * testsuite/tr1/6_containers/hash/24799.cc: Likewise.
1342 * testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
1343 *
1344 testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
1345 Likewise.
1346 * testsuite/tr1/6_containers/tuple/cons/assignment.cc: Likewise.
1347 * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
1348 * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
1349 * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc:
1350 Likewise.
1351 * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
1352 Likewise.
1353 * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Likewise.
1354 * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Likewise.
1355 * testsuite/tr1/6_containers/tuple/element_access/get.cc: Likewise.
1356 * testsuite/tr1/6_containers/tuple/tuple_size.cc: Likewise.
1357 * testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
1358 * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
1359 Likewise.
1360 * testsuite/tr1/6_containers/unordered_map/erase/1.cc: Likewise.
1361 * testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc: Likewise.
1362 * testsuite/tr1/6_containers/unordered_map/find/map1.cc: Likewise.
1363 * testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc:
1364 Likewise.
1365 * testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc:
1366 Likewise.
1367 * testsuite/tr1/6_containers/unordered_map/insert/map_range.cc:
1368 Likewise.
1369 * testsuite/tr1/6_containers/unordered_map/insert/map_single.cc:
1370 Likewise.
1371 * testsuite/tr1/6_containers/unordered_map/swap/1.cc: Likewise.
1372 * testsuite/tr1/6_containers/unordered_map/swap/2.cc: Likewise.
1373 * testsuite/tr1/6_containers/unordered_multimap/capacity/
1374 29134-multimap.cc: Likewise.
1375 * testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
1376 * testsuite/tr1/6_containers/unordered_multimap/erase/
1377 24061-multimap.cc: Likewise.
1378 * testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc:
1379 Likewise.
1380 * testsuite/tr1/6_containers/unordered_multimap/insert/
1381 24061-multimap.cc: Likewise.
1382 * testsuite/tr1/6_containers/unordered_multimap/insert/
1383 multimap_range.cc: Likewise.
1384 * testsuite/tr1/6_containers/unordered_multimap/insert/
1385 multimap_single.cc: Likewise.
1386 * testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Likewise.
1387 * testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Likewise.
1388 * testsuite/tr1/6_containers/unordered_multiset/24054.cc: Likewise.
1389 * testsuite/tr1/6_containers/unordered_multiset/capacity/
1390 29134-multiset.cc: Likewise.
1391 * testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
1392 * testsuite/tr1/6_containers/unordered_multiset/erase/
1393 24061-multiset.cc: Likewise.
1394 * testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc:
1395 Likewise.
1396 * testsuite/tr1/6_containers/unordered_multiset/insert/
1397 24061-multiset.cc: Likewise.
1398 * testsuite/tr1/6_containers/unordered_multiset/insert/
1399 multiset_range.cc: Likewise.
1400 * testsuite/tr1/6_containers/unordered_multiset/insert/
1401 multiset_single.cc: Likewise.
1402 * testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Likewise.
1403 * testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Likewise.
1404 * testsuite/tr1/6_containers/unordered_set/23465.cc: Likewise.
1405 * testsuite/tr1/6_containers/unordered_set/26132.cc: Likewise.
1406 * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
1407 Likewise.
1408 * testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
1409 * testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc: Likewise.
1410 * testsuite/tr1/6_containers/unordered_set/find/set1.cc: Likewise.
1411 * testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc:
1412 Likewise.
1413 * testsuite/tr1/6_containers/unordered_set/insert/set_range.cc:
1414 Likewise.
1415 * testsuite/tr1/6_containers/unordered_set/insert/set_single.cc:
1416 Likewise.
1417 * testsuite/tr1/6_containers/unordered_set/swap/1.cc: Likewise.
1418 * testsuite/tr1/6_containers/unordered_set/swap/2.cc: Likewise.
1419 * testsuite/tr1/6_containers/utility/pair.cc: Likewise.
1420 * testsuite/tr1/7_regular_expressions/match_results/ctors/char/
1421 default.cc: Likewise.
1422 * testsuite/tr1/7_regular_expressions/regex_traits/char/
1423 translate_nocase.cc: Likewise.
1424 * testsuite/tr1/7_regular_expressions/regex_traits/char/value.cc:
1425 Likewise.
1426 * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
1427 translate_nocase.cc: Likewise.
1428 * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/value.cc:
1429 Likewise.
1430 * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
1431 * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise.
1432
b08c2bc7
VV
14332016-10-16 Ville Voutilainen <ville.voutilainen@gmail.com>
1434
1435 Make sure the return value of malloc_allocator::allocate
1436 is zero-initialized so that checking it for non-zero works
1437 later.
1438 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
1439 Initialize the return value.
1440 * testsuite/ext/malloc_allocator/sanity.cc: New.
1441
38e34671
EW
14422016-10-14 Eelis van der Weegen <eelis@eelis.net>
1443
1444 * include/bits/stl_algo.h (shuffle): Extract two random numbers from
1445 each generator invocation when its range is large enough.
1446
a4744f62
JW
14472016-10-14 Jonathan Wakely <jwakely@redhat.com>
1448
17739146
JW
1449 * testsuite/experimental/algorithm/sample.cc: Qualify calls to
1450 resolve ambiguity between std::sample and std::experimental::sample.
1451
de1d0794
JW
1452 * include/std/functional (_Mu<A, false, true>, _Mu<A, true, false>):
1453 Simplify forwarding from tuple of references.
1454 (_Maybe_wrap_member_pointer): Remove.
1455 (_Bind::__call, _Bind::__call_c, _Bind::__call_v, _Bind::__call_c_v):
1456 Use std::__invoke.
1457 (_Bind::_Mu_type, _Bind::_Res_type_impl, _Bind::_Res_type)
1458 (_Bind::__dependent, _Bind::_Res_type_cv): New helpers to simplify
1459 return type deduction.
1460 (_Bind::operator(), _Bind::operator() const): Use new helpers.
1461 (_Bind::operator() volatile, _Bind::operator() const volatile):
1462 Likewise. Add deprecated attribute for C++17 mode.
1463 (_Bind_result::__call): Use std::__invoke.
1464 (_Bind_result::operator() volatile)
1465 (_Bind_result::operator() const volatile): Add deprecated attribute.
1466 (_Bind_helper::__maybe_type, _Bindres_helper::__maybe_type): Remove.
1467 (_Bind_helper, _Bindres_helper): Don't use _Maybe_wrap_member_pointer.
1468 (bind, bind<R>): Don't use __maybe_type.
1469 * src/c++11/compatibility-thread-c++0x.cc
1470 (_Maybe_wrap_member_pointer): Define here for compatibility symbols.
1471 * testsuite/20_util/bind/68912.cc: Don't test volatile-qualification
1472 in C++17 mode.
1473 * testsuite/20_util/bind/cv_quals.cc: Likewise.
1474 * testsuite/20_util/bind/cv_quals_2.cc: Likewise.
1475
a4744f62
JW
1476 * include/std/scoped_allocator (scoped_allocator_adaptor): Forward
1477 piecewise construction arguments as tuples of references, to avoid
1478 copies (related to LWG 2511).
1479 * testsuite/20_util/scoped_allocator/construct_pair.cc: New test.
1480
1558d39e
PC
14812016-10-14 Paolo Carlini <paolo.carlini@oracle.com>
1482
1483 * testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables.
1484 * testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
1485 * testsuite/26_numerics/complex/13450.cc: Likewise.
1486 * testsuite/26_numerics/complex/50880.cc: Likewise.
1487 * testsuite/26_numerics/complex/c99.cc: Likewise.
1488 * testsuite/26_numerics/complex/cons/48760.cc: Likewise.
1489 * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
1490 * testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise.
1491 * testsuite/26_numerics/complex/dr844.cc: Likewise.
1492 * testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
1493 Likewise.
1494 * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
1495 Likewise.
1496 * testsuite/26_numerics/complex/value_operations/1.cc: Likewise.
1497 * testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise.
1498 * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
1499 * testsuite/26_numerics/headers/cmath/
1500 c99_classification_macros_c++11.c: Likewise.c
1501 * testsuite/26_numerics/headers/cmath/
1502 c99_classification_macros_c++98.cc: Likewise.
1503 * testsuite/26_numerics/headers/cmath/c_math.cc: Likewise.
1504 * testsuite/26_numerics/headers/cmath/dr550.cc: Likewise.
1505 * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
1506 * testsuite/26_numerics/headers/cmath/powi.cc: Likewise.
1507 * testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise.
1508 * testsuite/26_numerics/inner_product/1.cc: Likewise.
1509 * testsuite/26_numerics/iota/1.cc: Likewise.
1510 * testsuite/26_numerics/partial_sum/1.cc: Likewise.
1511 * testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
1512 Likewise.
1513 * testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
1514 Likewise.
1515 * testsuite/26_numerics/random/bernoulli_distribution/operators/
1516 equal.cc: Likewise.
1517 * testsuite/26_numerics/random/bernoulli_distribution/operators/
1518 inequal.cc: Likewise.
1519 * testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
1520 Likewise.
1521 * testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
1522 Likewise.
1523 * testsuite/26_numerics/random/binomial_distribution/operators/
1524 equal.cc: Likewise.
1525 * testsuite/26_numerics/random/binomial_distribution/operators/
1526 inequal.cc: Likewise.
1527 * testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
1528 Likewise.
1529 * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
1530 Likewise.
1531 * testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc:
1532 Likewise.
1533 * testsuite/26_numerics/random/cauchy_distribution/operators/
1534 inequal.cc: Likewise.
1535 * testsuite/26_numerics/random/chi_squared_distribution/cons/
1536 default.cc: Likewise.
1537 * testsuite/26_numerics/random/chi_squared_distribution/cons/
1538 parms.cc: Likewise.
1539 * testsuite/26_numerics/random/chi_squared_distribution/operators/
1540 equal.cc: Likewise.
1541 * testsuite/26_numerics/random/chi_squared_distribution/operators/
1542 inequal.cc: Likewise.
1543 * testsuite/26_numerics/random/default_random_engine.cc: Likewise.
1544 * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
1545 Likewise.
1546 * testsuite/26_numerics/random/discard_block_engine/operators/equal.cc:
1547 Likewise.
1548 * testsuite/26_numerics/random/discard_block_engine/operators/
1549 inequal.cc: Likewise.
1550 * testsuite/26_numerics/random/discard_block_engine/operators/
1551 serialize.cc: Likewise.
1552 * testsuite/26_numerics/random/discrete_distribution/cons/
1553 default.cc: Likewise.
1554 * testsuite/26_numerics/random/discrete_distribution/cons/
1555 initlist.cc: Likewise.
1556 * testsuite/26_numerics/random/discrete_distribution/cons/
1557 num_xbound_fun.cc: Likewise.
1558 * testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
1559 Likewise.
1560 * testsuite/26_numerics/random/discrete_distribution/operators/
1561 equal.cc: Likewise.
1562 * testsuite/26_numerics/random/discrete_distribution/operators/
1563 inequal.cc: Likewise.
1564 * testsuite/26_numerics/random/exponential_distribution/cons/
1565 default.cc: Likewise.
1566 * testsuite/26_numerics/random/exponential_distribution/cons/
1567 parms.cc: Likewise.
1568 * testsuite/26_numerics/random/exponential_distribution/operators/
1569 equal.cc: Likewise.
1570 * testsuite/26_numerics/random/exponential_distribution/operators/
1571 inequal.cc: Likewise.
1572 * testsuite/26_numerics/random/extreme_value_distribution/cons/
1573 default.cc: Likewise.
1574 * testsuite/26_numerics/random/extreme_value_distribution/cons/
1575 parms.cc: Likewise.
1576 * testsuite/26_numerics/random/extreme_value_distribution/operators/
1577 equal.cc: Likewise.
1578 * testsuite/26_numerics/random/extreme_value_distribution/operators/
1579 inequal.cc: Likewise.
1580 * testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
1581 Likewise.
1582 * testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
1583 Likewise.
1584 * testsuite/26_numerics/random/fisher_f_distribution/operators/
1585 equal.cc: Likewise.
1586 * testsuite/26_numerics/random/fisher_f_distribution/operators/
1587 inequal.cc: Likewise.
1588 * testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
1589 Likewise.
1590 * testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
1591 Likewise.
1592 * testsuite/26_numerics/random/gamma_distribution/operators/equal.cc:
1593 Likewise.
1594 * testsuite/26_numerics/random/gamma_distribution/operators/
1595 inequal.cc: Likewise.
1596 * testsuite/26_numerics/random/geometric_distribution/cons/
1597 default.cc: Likewise.
1598 * testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
1599 Likewise.
1600 * testsuite/26_numerics/random/geometric_distribution/operators/
1601 equal.cc: Likewise.
1602 * testsuite/26_numerics/random/geometric_distribution/operators/
1603 inequal.cc: Likewise.
1604 * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
1605 Likewise.
1606 * testsuite/26_numerics/random/independent_bits_engine/operators/
1607 equal.cc: Likewise.
1608 * testsuite/26_numerics/random/independent_bits_engine/operators/
1609 inequal.cc: Likewise.
1610 * testsuite/26_numerics/random/independent_bits_engine/operators/
1611 serialize.cc: Likewise.
1612 * testsuite/26_numerics/random/knuth_b.cc: Likewise.
1613 * testsuite/26_numerics/random/linear_congruential_engine/cons/
1614 55215.cc: Likewise.
1615 * testsuite/26_numerics/random/linear_congruential_engine/cons/
1616 default.cc: Likewise.
1617 * testsuite/26_numerics/random/linear_congruential_engine/operators/
1618 51795.cc: Likewise.
1619 * testsuite/26_numerics/random/linear_congruential_engine/operators/
1620 equal.cc: Likewise.
1621 * testsuite/26_numerics/random/linear_congruential_engine/operators/
1622 inequal.cc: Likewise.
1623 * testsuite/26_numerics/random/linear_congruential_engine/operators/
1624 serialize.cc: Likewise.
1625 * testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
1626 Likewise.
1627 * testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
1628 Likewise.
1629 * testsuite/26_numerics/random/lognormal_distribution/operators/
1630 equal.cc: Likewise.
1631 * testsuite/26_numerics/random/lognormal_distribution/operators/
1632 inequal.cc: Likewise.
1633 * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
1634 Likewise.
1635 * testsuite/26_numerics/random/mersenne_twister_engine/cons/
1636 default.cc: Likewise.
1637 * testsuite/26_numerics/random/mersenne_twister_engine/operators/
1638 equal.cc: Likewise.
1639 * testsuite/26_numerics/random/mersenne_twister_engine/operators/
1640 inequal.cc: Likewise.
1641 * testsuite/26_numerics/random/mersenne_twister_engine/operators/
1642 serialize.cc: Likewise.
1643 * testsuite/26_numerics/random/minstd_rand.cc: Likewise.
1644 * testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
1645 * testsuite/26_numerics/random/mt19937.cc: Likewise.
1646 * testsuite/26_numerics/random/mt19937_64.cc: Likewise.
1647 * testsuite/26_numerics/random/negative_binomial_distribution/cons/
1648 default.cc: Likewise.
1649 * testsuite/26_numerics/random/negative_binomial_distribution/cons/
1650 parms.cc: Likewise.
1651 * testsuite/26_numerics/random/negative_binomial_distribution/
1652 operators/equal.cc: Likewise.
1653 * testsuite/26_numerics/random/negative_binomial_distribution/
1654 operators/inequal.cc: Likewise.
1655 * testsuite/26_numerics/random/normal_distribution/cons/default.cc:
1656 Likewise.
1657 * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
1658 Likewise.
1659 * testsuite/26_numerics/random/normal_distribution/operators/
1660 equal.cc: Likewise.
1661 * testsuite/26_numerics/random/normal_distribution/operators/
1662 inequal.cc: Likewise.
1663 * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
1664 default.cc: Likewise.
1665 * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
1666 initlist_fun.cc: Likewise.
1667 * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
1668 num_xbound_fun.cc: Likewise.
1669 * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
1670 range.cc: Likewise.
1671 * testsuite/26_numerics/random/piecewise_constant_distribution/
1672 operators/equal.cc: Likewise.
1673 * testsuite/26_numerics/random/piecewise_constant_distribution/
1674 operators/inequal.cc: Likewise.
1675 * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
1676 default.cc: Likewise.
1677 * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
1678 initlist_fun.cc: Likewise.
1679 * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
1680 num_xbound_fun.cc: Likewise.
1681 * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
1682 range.cc: Likewise.
1683 * testsuite/26_numerics/random/piecewise_linear_distribution/
1684 operators/equal.cc: Likewise.
1685 * testsuite/26_numerics/random/piecewise_linear_distribution/
1686 operators/inequal.cc: Likewise.
1687 * testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
1688 Likewise.
1689 * testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
1690 Likewise.
1691 * testsuite/26_numerics/random/poisson_distribution/operators/
1692 equal.cc: Likewise.
1693 * testsuite/26_numerics/random/poisson_distribution/operators/
1694 inequal.cc: Likewise.
1695 * testsuite/26_numerics/random/random_device/cons/default.cc: Likewise.
1696 * testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
1697 * testsuite/26_numerics/random/ranlux24.cc: Likewise.
1698 * testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
1699 * testsuite/26_numerics/random/ranlux48.cc: Likewise.
1700 * testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
1701 * testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
1702 * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
1703 Likewise.
1704 * testsuite/26_numerics/random/shuffle_order_engine/operators/
1705 equal.cc: Likewise.
1706 * testsuite/26_numerics/random/shuffle_order_engine/operators/
1707 inequal.cc: Likewise.
1708 * testsuite/26_numerics/random/shuffle_order_engine/operators/
1709 serialize.cc: Likewise.
1710 * testsuite/26_numerics/random/student_t_distribution/cons/
1711 default.cc: Likewise.
1712 * testsuite/26_numerics/random/student_t_distribution/cons/
1713 parms.cc: Likewise.
1714 * testsuite/26_numerics/random/student_t_distribution/operators/
1715 equal.cc: Likewise.
1716 * testsuite/26_numerics/random/student_t_distribution/operators/
1717 inequal.cc: Likewise.
1718 * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1719 55215.cc: Likewise.
1720 * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1721 default.cc: Likewise.
1722 * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
1723 equal.cc: Likewise.
1724 * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
1725 inequal.cc: Likewise.
1726 * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
1727 serialize.cc: Likewise.
1728 * testsuite/26_numerics/random/uniform_int_distribution/cons/
1729 default.cc: Likewise.
1730 * testsuite/26_numerics/random/uniform_int_distribution/cons/
1731 parms.cc: Likewise.
1732 * testsuite/26_numerics/random/uniform_int_distribution/operators/
1733 equal.cc: Likewise.
1734 * testsuite/26_numerics/random/uniform_int_distribution/operators/
1735 inequal.cc: Likewise.
1736 * testsuite/26_numerics/random/uniform_real_distribution/cons/
1737 default.cc: Likewise.
1738 * testsuite/26_numerics/random/uniform_real_distribution/cons/
1739 parms.cc: Likewise.
1740 * testsuite/26_numerics/random/uniform_real_distribution/operators/
1741 equal.cc: Likewise.
1742 * testsuite/26_numerics/random/uniform_real_distribution/operators/
1743 inequal.cc: Likewise.
1744 * testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
1745 Likewise.
1746 * testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
1747 Likewise.
1748 * testsuite/26_numerics/random/weibull_distribution/operators/
1749 equal.cc: Likewise.
1750 * testsuite/26_numerics/random/weibull_distribution/operators/
1751 inequal.cc: Likewise.
1752 * testsuite/26_numerics/slice/1.cc: Likewise.
1753 * testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
1754 * testsuite/26_numerics/valarray/27867.cc: Likewise.
1755 * testsuite/26_numerics/valarray/28277.cc: Likewise.
1756 * testsuite/26_numerics/valarray/30416.cc: Likewise.
1757 * testsuite/26_numerics/valarray/dr543.cc: Likewise.
1758 * testsuite/26_numerics/valarray/dr630-1.cc: Likewise.
1759 * testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
1760 * testsuite/26_numerics/valarray/dr630-3.C: Likewise.
1761 * testsuite/26_numerics/valarray/init-list.cc: Likewise.
1762 * testsuite/26_numerics/valarray/moveable.cc: Likewise.
1763 * testsuite/26_numerics/valarray/operators.cc: Likewise.
1764 * testsuite/26_numerics/valarray/swap.cc: Likewise.
1765 * testsuite/experimental/deque/erasure.cc: Likewise.
1766 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1767 Likewise.
1768 * testsuite/experimental/filesystem/iterators/
1769 recursive_directory_iterator.cc: Likewise.
1770 * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
1771 * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
1772 * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
1773 * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
1774 * testsuite/experimental/filesystem/operations/create_directories.cc:
1775 Likewise.
1776 * testsuite/experimental/filesystem/operations/create_directory.cc:
1777 Likewise.
1778 * testsuite/experimental/filesystem/operations/current_path.cc:
1779 Likewise.
1780 * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
1781 * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
1782 * testsuite/experimental/filesystem/operations/last_write_time.cc:
1783 Likewise.
1784 * testsuite/experimental/filesystem/operations/permissions.cc: Likewise.
1785 * testsuite/experimental/filesystem/operations/status.cc: Likewise.
1786 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
1787 Likewise.
1788 * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
1789 * testsuite/experimental/forward_list/erasure.cc: Likewise.
1790 * testsuite/experimental/list/erasure.cc: Likewise.
1791 * testsuite/experimental/map/erasure.cc: Likewise.
1792 * testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise.
1793 * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
1794 Likewise.
1795 * testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise.
1796 * testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise.
1797 * testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise.
1798 * testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
1799 Likewise.
1800 * testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise.
1801 * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
1802 Likewise.
1803 * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1804 Likewise.
1805 * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
1806 Likewise.
1807 * testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
1808 * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise.
1809 * testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise.
1810 * testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
1811 Likewise.
1812 * testsuite/experimental/memory/shared_ptr/observers/operators.cc:
1813 Likewise.
1814 * testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
1815 Likewise.
1816 * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
1817 Likewise.
1818 * testsuite/experimental/memory_resource/1.cc: Likewise.
1819 * testsuite/experimental/memory_resource/null_memory_resource.cc:
1820 Likewise.
1821 * testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise.
1822 * testsuite/experimental/set/erasure.cc: Likewise.
1823 * testsuite/experimental/string/erasure.cc: Likewise.
1824 * testsuite/experimental/string_view/capacity/1.cc: Likewise.
1825 * testsuite/experimental/string_view/cons/char/1.cc: Likewise.
1826 * testsuite/experimental/string_view/cons/char/2.cc: Likewise.
1827 * testsuite/experimental/string_view/cons/char/3.cc: Likewise.
1828 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
1829 * testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise.
1830 * testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise.
1831 * testsuite/experimental/string_view/element_access/char/1.cc: Likewise.
1832 * testsuite/experimental/string_view/element_access/char/empty.cc:
1833 Likewise.
1834 * testsuite/experimental/string_view/element_access/char/
1835 front_back.cc: Likewise.
1836 * testsuite/experimental/string_view/element_access/wchar_t/1.cc:
1837 Likewise.
1838 * testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
1839 Likewise.
1840 * testsuite/experimental/string_view/element_access/wchar_t/
1841 front_back.cc: Likewise.
1842 * testsuite/experimental/string_view/inserters/char/1.cc: Likewise.
1843 * testsuite/experimental/string_view/inserters/char/2.cc: Likewise.
1844 * testsuite/experimental/string_view/inserters/char/3.cc: Likewise.
1845 * testsuite/experimental/string_view/inserters/pod/10081-out.cc:
1846 Likewise.
1847 * testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise.
1848 * testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise.
1849 * testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise.
1850 * testsuite/experimental/string_view/modifiers/remove_prefix/char/
1851 1.cc: Likewise.
1852 * testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
1853 1.cc: Likewise.
1854 * testsuite/experimental/string_view/modifiers/remove_suffix/char/
1855 1.cc: Likewise.
1856 * testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
1857 1.cc: Likewise.
1858 * testsuite/experimental/string_view/operations/compare/char/1.cc:
1859 Likewise.
1860 * testsuite/experimental/string_view/operations/compare/char/
1861 13650.cc: Likewise.
1862 * testsuite/experimental/string_view/operations/compare/wchar_t/
1863 1.cc: Likewise.
1864 * testsuite/experimental/string_view/operations/compare/wchar_t/
1865 13650.cc: Likewise.
1866 * testsuite/experimental/string_view/operations/copy/char/1.cc:
1867 Likewise.
1868 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
1869 Likewise.
1870 * testsuite/experimental/string_view/operations/data/char/1.cc:
1871 Likewise.
1872 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
1873 Likewise.
1874 * testsuite/experimental/string_view/operations/find/char/1.cc:
1875 Likewise.
1876 * testsuite/experimental/string_view/operations/find/char/2.cc:
1877 Likewise.
1878 * testsuite/experimental/string_view/operations/find/char/3.cc:
1879 Likewise.
1880 * testsuite/experimental/string_view/operations/find/char/4.cc:
1881 Likewise.
1882 * testsuite/experimental/string_view/operations/find/wchar_t/1.cc:
1883 Likewise.
1884 * testsuite/experimental/string_view/operations/find/wchar_t/2.cc:
1885 Likewise.
1886 * testsuite/experimental/string_view/operations/find/wchar_t/3.cc:
1887 Likewise.
1888 * testsuite/experimental/string_view/operations/find/wchar_t/4.cc:
1889 Likewise.
1890 * testsuite/experimental/string_view/operations/rfind/char/1.cc:
1891 Likewise.
1892 * testsuite/experimental/string_view/operations/rfind/char/2.cc:
1893 Likewise.
1894 * testsuite/experimental/string_view/operations/rfind/char/3.cc:
1895 Likewise.
1896 * testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc:
1897 Likewise.
1898 * testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc:
1899 Likewise.
1900 * testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc:
1901 Likewise.
1902 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1903 Likewise.
1904 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1905 Likewise.
1906 * testsuite/experimental/string_view/operations/to_string/1.cc:
1907 Likewise.
1908 * testsuite/experimental/string_view/operators/char/2.cc: Likewise.
1909 * testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise.
1910 * testsuite/experimental/unordered_map/erasure.cc: Likewise.
1911 * testsuite/experimental/unordered_set/erasure.cc: Likewise.
1912 * testsuite/experimental/vector/erasure.cc: Likewise.
1913 * testsuite/ext/array_allocator/1.cc: Likewise.
1914 * testsuite/ext/array_allocator/2.cc: Likewise.
1915 * testsuite/ext/array_allocator/3.cc: Likewise.
1916 * testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
1917 * testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
1918 * testsuite/ext/codecvt/1.cc: Likewise.
1919 * testsuite/ext/codecvt/char-1.cc: Likewise.
1920 * testsuite/ext/codecvt/char-2.cc: Likewise.
1921 * testsuite/ext/codecvt/wchar_t.cc: Likewise.
1922 * testsuite/ext/enc_filebuf/char/13189.cc: Likewise.
1923 * testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
1924 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
1925 * testsuite/ext/ext_pointer/1.cc: Likewise.
1926 * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
1927 * testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
1928 * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise.
1929 * testsuite/ext/mt_allocator/tune-1.cc: Likewise.
1930 * testsuite/ext/mt_allocator/tune-2.cc: Likewise.
1931 * testsuite/ext/mt_allocator/tune-3.cc: Likewise.
1932 * testsuite/ext/mt_allocator/tune-4.cc: Likewise.
1933 * testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
1934 * testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
1935 * testsuite/ext/pod_char_traits.cc: Likewise.
1936 * testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
1937 * testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
1938 * testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
1939 * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
1940 Likewise.
1941 * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
1942 Likewise.
1943 * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
1944 Likewise.
1945 * testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
1946 * testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
1947 * testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
1948 * testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise.
1949 * testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
1950 * testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
1951 * testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
1952 * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise.
1953 * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
1954 Likewise.
1955 * testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
1956 Likewise.
1957 * testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
1958 Likewise.
1959 * testsuite/ext/random/hypergeometric_distribution/operators/
1960 equal.cc: Likewise.
1961 * testsuite/ext/random/hypergeometric_distribution/operators/
1962 inequal.cc: Likewise.
1963 * testsuite/ext/random/hypergeometric_distribution/operators/
1964 serialize.cc: Likewise.
1965 * testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
1966 * testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
1967 * testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
1968 * testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
1969 * testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise.
1970 * testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
1971 * testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
1972 * testsuite/ext/random/logistic_distribution/operators/equal.cc:
1973 Likewise.
1974 * testsuite/ext/random/logistic_distribution/operators/inequal.cc:
1975 Likewise.
1976 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
1977 Likewise.
1978 * testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
1979 * testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
1980 * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
1981 Likewise.
1982 * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
1983 Likewise.
1984 * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
1985 Likewise.
1986 * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
1987 * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
1988 * testsuite/ext/random/normal_mv_distribution/operators/equal.cc:
1989 Likewise.
1990 * testsuite/ext/random/normal_mv_distribution/operators/inequal.cc:
1991 Likewise.
1992 * testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
1993 * testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
1994 * testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise.
1995 * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
1996 Likewise.
1997 * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
1998 Likewise.
1999 * testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
2000 * testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
2001 * testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
2002 * testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise.
2003 * testsuite/ext/random/rice_distribution/operators/serialize.cc:
2004 Likewise.
2005 * testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
2006 default.cc: Likewise.
2007 * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
2008 equal.cc: Likewise.
2009 * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
2010 inequal.cc: Likewise.
2011 * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
2012 serialize.cc: Likewise.
2013 * testsuite/ext/random/triangular_distribution/cons/default.cc:
2014 Likewise.
2015 * testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
2016 * testsuite/ext/random/triangular_distribution/operators/equal.cc:
2017 Likewise.
2018 * testsuite/ext/random/triangular_distribution/operators/inequal.cc:
2019 Likewise.
2020 * testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
2021 Likewise.
2022 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
2023 equal.cc: Likewise.
2024 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
2025 generate.cc: Likewise.
2026 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
2027 inequal.cc: Likewise.
2028 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
2029 serialize.cc: Likewise.
2030 * testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise.
2031 * testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
2032 * testsuite/ext/random/von_mises_distribution/operators/equal.cc:
2033 Likewise.
2034 * testsuite/ext/random/von_mises_distribution/operators/inequal.cc:
2035 Likewise.
2036 * testsuite/ext/rope/2.cc: Likewise.
2037 * testsuite/ext/rope/3.cc: Likewise.
2038 * testsuite/ext/rope/4.cc: Likewise.
2039 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
2040 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
2041 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise.
2042 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
2043 * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
2044 * testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise.
2045 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
2046 * testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise.
2047 * testsuite/ext/stdio_filebuf/char/2.cc: Likewise.
2048 * testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
2049 * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise.
2050 * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise.
2051 * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise.
2052 * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise.
2053 * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
2054 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
2055 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise.
2056 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise.
2057 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise.
2058 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise.
2059 * testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
2060 * testsuite/ext/type_traits/add_unsigned.cc: Likewise.
2061 * testsuite/ext/type_traits/remove_unsigned.cc: Likewise.
2062 * testsuite/ext/vstring/capacity/29134.cc: Likewise.
2063 * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
2064 * testsuite/ext/vstring/cons/58415-1.cc: Likewise.
2065 * testsuite/ext/vstring/cons/moveable.cc: Likewise.
2066 * testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
2067 * testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
2068 * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
2069 * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
2070 * testsuite/ext/vstring/hash/char/1.cc: Likewise.
2071 * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
2072 * testsuite/ext/vstring/init-list.cc: Likewise.
2073 * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
2074 * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
2075 * testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
2076 * testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
2077 * testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
2078 * testsuite/ext/vstring/operators/1.cc: Likewise.
2079 * testsuite/ext/vstring/operators/2.cc: Likewise.
2080
ace4c2f0
JW
20812016-10-14 Jonathan Wakely <jwakely@redhat.com>
2082
2083 PR libstdc++/65122
2084 * include/ext/malloc_allocator.h (malloc_allocator::allocate): Use
2085 aligned_alloc for types with extended alignment if available,
2086 otherwise throw bad_alloc if malloc doesn't return a suitable value.
2087 * include/ext/bitmap_allocator.h (bitmap_allocator::allocate)
2088 (bitmap_allocator::deallocate): Use aligned new/delete for types with
2089 extended alignment.
2090 * include/ext/mt_allocator.h (__mt_alloc::allocate)
2091 (__mt_alloc::deallocate): Likewise.
2092 * include/ext/new_allocator.h (new_allocator::allocate)
2093 (new_allocator::deallocate): Likewise.
2094 * include/ext/pool_allocator.h (__pool_alloc::allocate)
2095 (__pool_alloc::deallocate): Likewise.
2096 * testsuite/20_util/allocator/overaligned.cc: New test.
2097 * testsuite/ext/bitmap_allocator/overaligned.cc: New test.
2098 * testsuite/ext/malloc_allocator/overaligned.cc: New test.
2099 * testsuite/ext/mt_allocator/overaligned.cc: New test.
2100 * testsuite/ext/new_allocator/overaligned.cc: New test.
2101 * testsuite/ext/pool_allocator/overaligned.cc: New test.
2102
45b510b3
TS
21032016-10-14 Tim Shen <timshen@google.com>
2104
2105 PR libstdc++/77944
ace4c2f0
JW
2106 * include/std/variant: Include <bits/funcexcept.h> for __try and
2107 __catch.
45b510b3 2108
57c4fbc6
JW
21092016-10-14 Jonathan Wakely <jwakely@redhat.com>
2110
2111 * include/std/functional (_Reference_wrapper_base_impl): Remove.
2112 (_Refwrap_base_arg1, _Refwrap_base_arg2): New helpers using __void_t.
2113 (_Reference_wrapper_base): Inherit from new helpers.
2114
2437d31d
PC
21152016-10-13 Paolo Carlini <paolo.carlini@oracle.com>
2116
2117 * testsuite/24_iterators/container_access.cc: Remove 'test' variables.
2118 * testsuite/24_iterators/istream_iterator/2.cc: Likewise.
2119 * testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise.
2120 * testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise.
2121 * testsuite/24_iterators/operations/next.cc: Likewise.
2122 * testsuite/24_iterators/operations/prev.cc: Likewise.
2123 * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
2124 * testsuite/24_iterators/random_access_iterator/26020.cc: Likewise.
2125 * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
2126 * testsuite/24_iterators/reverse_iterator/11729.cc: Likewise.
2127 * testsuite/24_iterators/reverse_iterator/3.cc: Likewise.
2128 * testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
2129 * testsuite/25_algorithms/all_of/1.cc: Likewise.
2130 * testsuite/25_algorithms/any_of/1.cc: Likewise.
2131 * testsuite/25_algorithms/binary_search/2.cc: Likewise.
2132 * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
2133 * testsuite/25_algorithms/clamp/1.cc: Likewise.
2134 * testsuite/25_algorithms/clamp/2.cc: Likewise.
2135 * testsuite/25_algorithms/copy/1.cc: Likewise.
2136 * testsuite/25_algorithms/copy/2.cc: Likewise.
2137 * testsuite/25_algorithms/copy/3.cc: Likewise.
2138 * testsuite/25_algorithms/copy/34595.cc: Likewise.
2139 * testsuite/25_algorithms/copy/4.cc: Likewise.
2140 * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
2141 * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
2142 * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
2143 * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
2144 * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
2145 * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
2146 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
2147 Likewise.
2148 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
2149 Likewise.
2150 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
2151 Likewise.
2152 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
2153 Likewise.
2154 * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
2155 * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
2156 * testsuite/25_algorithms/copy_n/1.cc: Likewise.
2157 * testsuite/25_algorithms/copy_n/2.cc: Likewise.
2158 * testsuite/25_algorithms/copy_n/3.cc: Likewise.
2159 * testsuite/25_algorithms/copy_n/4.cc: Likewise.
2160 * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
2161 * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
2162 * testsuite/25_algorithms/equal_range/2.cc: Likewise.
2163 * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
2164 * testsuite/25_algorithms/fill/1.cc: Likewise.
2165 * testsuite/25_algorithms/fill/2.cc: Likewise.
2166 * testsuite/25_algorithms/fill/3.cc: Likewise.
2167 * testsuite/25_algorithms/fill/4.cc: Likewise.
2168 * testsuite/25_algorithms/fill_n/1.cc: Likewise.
2169 * testsuite/25_algorithms/find/39546.cc: Likewise.
2170 * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise.
2171 * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise.
2172 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
2173 Likewise.
2174 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
2175 Likewise.
2176 * testsuite/25_algorithms/find_if/1.cc: Likewise.
2177 * testsuite/25_algorithms/find_if_not/1.cc: Likewise.
2178 * testsuite/25_algorithms/for_each/1.cc: Likewise.
2179 * testsuite/25_algorithms/heap/1.cc: Likewise.
2180 * testsuite/25_algorithms/heap/moveable.cc: Likewise.
2181 * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
2182 * testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
2183 * testsuite/25_algorithms/includes/1.cc: Likewise.
2184 * testsuite/25_algorithms/inplace_merge/1.cc: Likewise.
2185 * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
2186 * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
2187 * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
2188 * testsuite/25_algorithms/is_heap/1.cc: Likewise.
2189 * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
2190 * testsuite/25_algorithms/is_partitioned/1.cc: Likewise.
2191 * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
2192 * testsuite/25_algorithms/is_permutation/2.cc: Likewise.
2193 * testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise.
2194 * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
2195 * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
2196 * testsuite/25_algorithms/iter_swap/20577.cc: Likewise.
2197 * testsuite/25_algorithms/lower_bound/2.cc: Likewise.
2198 * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
2199 * testsuite/25_algorithms/make_heap/complexity.cc: Likewise.
2200 * testsuite/25_algorithms/max/1.cc: Likewise.
2201 * testsuite/25_algorithms/max/2.cc: Likewise.
2202 * testsuite/25_algorithms/max/3.cc: Likewise.
2203 * testsuite/25_algorithms/max/37547.cc: Likewise.
2204 * testsuite/25_algorithms/max/4.cc: Likewise.
2205 * testsuite/25_algorithms/min/1.cc: Likewise.
2206 * testsuite/25_algorithms/min/2.cc: Likewise.
2207 * testsuite/25_algorithms/min/3.cc: Likewise.
2208 * testsuite/25_algorithms/min/37547.cc: Likewise.
2209 * testsuite/25_algorithms/min/4.cc: Likewise.
2210 * testsuite/25_algorithms/minmax/1.cc: Likewise.
2211 * testsuite/25_algorithms/minmax/2.cc: Likewise.
2212 * testsuite/25_algorithms/minmax/3.cc: Likewise.
2213 * testsuite/25_algorithms/minmax/37547.cc: Likewise.
2214 * testsuite/25_algorithms/minmax_element/1.cc: Likewise.
2215 * testsuite/25_algorithms/move/1.cc: Likewise.
2216 * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
2217 * testsuite/25_algorithms/move_backward/1.cc: Likewise.
2218 * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
2219 * testsuite/25_algorithms/next_permutation/moveable.cc: Likewise.
2220 * testsuite/25_algorithms/none_of/1.cc: Likewise.
2221 * testsuite/25_algorithms/nth_element/1.cc: Likewise.
2222 * testsuite/25_algorithms/nth_element/2.cc: Likewise.
2223 * testsuite/25_algorithms/nth_element/3.cc: Likewise.
2224 * testsuite/25_algorithms/nth_element/moveable.cc: Likewise.
2225 * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
2226 * testsuite/25_algorithms/partial_sort/2.cc: Likewise.
2227 * testsuite/25_algorithms/partial_sort/check_compare_by_value.cc:
2228 Likewise.
2229 * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
2230 * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
2231 * testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise.
2232 * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
2233 * testsuite/25_algorithms/partition/1.cc: Likewise.
2234 * testsuite/25_algorithms/partition/moveable.cc: Likewise.
2235 * testsuite/25_algorithms/partition_copy/1.cc: Likewise.
2236 * testsuite/25_algorithms/partition_point/1.cc: Likewise.
2237 * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
2238 * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
2239 * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
2240 * testsuite/25_algorithms/random_shuffle/1.cc: Likewise.
2241 * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
2242 * testsuite/25_algorithms/rotate/1.cc: Likewise.
2243 * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
2244 * testsuite/25_algorithms/rotate/moveable2.cc: Likewise.
2245 * testsuite/25_algorithms/rotate/rotate.cc: Likewise.
2246 * testsuite/25_algorithms/search/1.cc: Likewise.
2247 * testsuite/25_algorithms/search_n/58358.cc: Likewise.
2248 * testsuite/25_algorithms/shuffle/1.cc: Likewise.
2249 * testsuite/25_algorithms/sort/1.cc: Likewise.
2250 * testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise.
2251 * testsuite/25_algorithms/sort/moveable.cc: Likewise.
2252 * testsuite/25_algorithms/sort/random_test.cc: Likewise.
2253 * testsuite/25_algorithms/sort/vectorbool.cc: Likewise.
2254 * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise.
2255 * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
2256 * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
2257 * testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise.
2258 * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
2259 * testsuite/25_algorithms/stable_sort/2.cc: Likewise.
2260 * testsuite/25_algorithms/stable_sort/3.cc: Likewise.
2261 * testsuite/25_algorithms/stable_sort/49559.cc: Likewise.
2262 * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
2263 Likewise.
2264 * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
2265 * testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
2266 * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
2267 * testsuite/25_algorithms/swap_ranges/1.cc: Likewise.
2268 * testsuite/25_algorithms/unique/11480.cc: Likewise.
2269 * testsuite/25_algorithms/unique/2.cc: Likewise.
2270 * testsuite/25_algorithms/unique/moveable.cc: Likewise.
2271 * testsuite/25_algorithms/unique_copy/1.cc: Likewise.
2272 * testsuite/25_algorithms/unique_copy/2.cc: Likewise.
2273 * testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
2274 * testsuite/25_algorithms/upper_bound/2.cc: Likewise.
2275 * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
2276 * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise.
2277 * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc:
2278 Likewise.
2279 * testsuite/28_regex/algorithms/regex_match/basic/string_01.cc:
2280 Likewise.
2281 * testsuite/28_regex/algorithms/regex_match/basic/
2282 string_range_00_03.cc: Likewise.
2283 * testsuite/28_regex/algorithms/regex_match/basic/
2284 string_range_01_03.cc: Likewise.
2285 * testsuite/28_regex/algorithms/regex_match/basic/
2286 string_range_02_03.cc: Likewise.
2287 * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
2288 Likewise.
2289 * testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
2290 Likewise.
2291 * testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
2292 Likewise.
2293 * testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc:
2294 Likewise.
2295 * testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
2296 Likewise.
2297 * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
2298 Likewise.
2299 * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
2300 Likewise.
2301 * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
2302 Likewise.
2303 * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
2304 Likewise.
2305 * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise.
2306 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
2307 Likewise.
2308 * testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc:
2309 Likewise.
2310 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
2311 Likewise.
2312 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/
2313 anymatcher.cc: Likewise.
2314 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
2315 Likewise.
2316 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
2317 Likewise.
2318 * testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
2319 Likewise.
2320 * testsuite/28_regex/algorithms/regex_match/extended/
2321 cstring_questionmark.cc: Likewise.
2322 * testsuite/28_regex/algorithms/regex_match/extended/
2323 cstring_range.cc: Likewise.
2324 * testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
2325 Likewise.
2326 * testsuite/28_regex/algorithms/regex_match/extended/
2327 string_range_00_03.cc: Likewise.
2328 * testsuite/28_regex/algorithms/regex_match/extended/
2329 string_range_01_03.cc: Likewise.
2330 * testsuite/28_regex/algorithms/regex_match/extended/
2331 string_range_02_03.cc: Likewise.
2332 * testsuite/28_regex/algorithms/regex_match/extended/
2333 wstring_locale.cc: Likewise.
2334 * testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
2335 Likewise.
2336 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise.
2337 * testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
2338 * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
2339 Likewise.
2340 * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
2341 Likewise.
2342 * testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise.
2343 * testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise.
2344 * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
2345 Likewise.
2346 * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
2347 * testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
2348 * testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
2349 * testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
2350 * testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
2351 * testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
2352 * testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
2353 * testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
2354 * testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
2355 * testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
2356 * testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
2357 * testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
2358 * testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
2359 * testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc:
2360 Likewise.
2361 * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
2362 Likewise.
2363 * testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
2364 * testsuite/28_regex/basic_regex/ctors/extended/
2365 string_range_01_02_03.cc: Likewise.
2366 * testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
2367 * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
2368 * testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
2369 * testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
2370 * testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
2371 * testsuite/28_regex/basic_regex/imbue/string.cc: Likewise.
2372 * testsuite/28_regex/constants/error_type.cc: Likewise.
2373 * testsuite/28_regex/constants/match_flag_type.cc: Likewise.
2374 * testsuite/28_regex/init-list.cc: Likewise.
2375 * testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise.
2376 * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
2377 Likewise.
2378 * testsuite/28_regex/iterators/regex_iterator/char/
2379 string_position_01.cc
2380 * testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc:
2381 Likewise.
2382 * testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
2383 default.cc: Likewise.
2384 * testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
2385 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
2386 Likewise.
2387 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
2388 Likewise.
2389 * testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise.
2390 * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
2391 Likewise.
2392 * testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
2393 default.cc: Likewise.
2394 * testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/
2395 default.cc: Likewise.
2396 * testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc:
2397 Likewise.
2398 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
2399 string_01.cc: Likewise.
2400 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
2401 wstring_02.cc: Likewise.
2402 * testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
2403 * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
2404 * testsuite/28_regex/match_results/format.cc: Likewise.
2405 * testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise.
2406 * testsuite/28_regex/match_results/swap.cc: Likewise.
2407 * testsuite/28_regex/match_results/typedefs.cc: Likewise.
2408 * testsuite/28_regex/regex_error/regex_error.cc: Likewise.
2409 * testsuite/28_regex/regression.cc: Likewise.
2410 * testsuite/28_regex/sub_match/cast_char.cc: Likewise.
2411 * testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
2412 * testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise.
2413 * testsuite/28_regex/sub_match/length.cc: Likewise.
2414 * testsuite/28_regex/traits/char/ctor.cc: Likewise.
2415 * testsuite/28_regex/traits/char/isctype.cc: Likewise.
2416 * testsuite/28_regex/traits/char/length.cc: Likewise.
2417 * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
2418 * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
2419 * testsuite/28_regex/traits/char/transform.cc: Likewise.
2420 * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
2421 * testsuite/28_regex/traits/char/translate.cc: Likewise.
2422 * testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
2423 * testsuite/28_regex/traits/char/user_defined.cc: Likewise.
2424 * testsuite/28_regex/traits/char/value.cc: Likewise.
2425 * testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
2426 * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
2427 * testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
2428 * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
2429 * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
2430 * testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
2431 * testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
2432 * testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
2433 * testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
2434 * testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise.
2435 * testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
2436 * testsuite/29_atomics/atomic/60658.cc: Likewise.
2437 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
2438 * testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
2439 * testsuite/backward/11460.cc: Likewise.
2440 * testsuite/backward/hash_map/1.cc: Likewise.
2441 * testsuite/backward/hash_map/25896.cc: Likewise.
2442 * testsuite/backward/hash_set/1.cc: Likewise.
2443 * testsuite/backward/hash_set/25896.cc: Likewise.
2444 * testsuite/decimal/binary-arith.cc: Likewise.
2445 * testsuite/decimal/comparison.cc: Likewise.
2446 * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
2447 * testsuite/decimal/compound-assignment.cc: Likewise.
2448 * testsuite/decimal/conversion-from-float.cc: Likewise.
2449 * testsuite/decimal/conversion-from-integral.cc: Likewise.
2450 * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
2451 * testsuite/decimal/conversion-to-integral.cc: Likewise.
2452 * testsuite/decimal/ctor.cc: Likewise.
2453 * testsuite/decimal/incdec-memfunc.cc: Likewise.
2454 * testsuite/decimal/incdec.cc: Likewise.
2455 * testsuite/decimal/make-decimal.cc: Likewise.
2456 * testsuite/decimal/pr54036-1.cc: Likewise.
2457 * testsuite/decimal/pr54036-2.cc: Likewise.
2458 * testsuite/decimal/pr54036-3.cc: Likewise.
2459 * testsuite/decimal/unary-arith.cc: Likewise.
2460 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise.
2461 * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
2462 Likewise.
2463 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise.
2464 * testsuite/special_functions/02_assoc_legendre/check_value.cc:
2465 Likewise.
2466 * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
2467 * testsuite/special_functions/03_beta/check_value.cc: Likewise.
2468 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
2469 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise.
2470 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
2471 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise.
2472 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
2473 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise.
2474 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
2475 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise.
2476 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
2477 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
2478 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise.
2479 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
2480 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise.
2481 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
2482 * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
2483 * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
2484 * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
2485 * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
2486 * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
2487 * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
2488 * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
2489 * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
2490 * testsuite/special_functions/14_expint/check_value.cc: Likewise.
2491 * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
2492 * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
2493 * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
2494 * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
2495 * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
2496 * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
2497 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
2498 * testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise.
2499 * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
2500 * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
2501 * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
2502 * testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise.
2503 * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
2504 * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
2505 * testsuite/tr2/bases/value.cc: Likewise.
2506 * testsuite/tr2/direct_bases/value.cc: Likewise.
2507 * testsuite/util/debug/checks.h: Likewise.
2508 * testsuite/util/debug/unordered_checks.h: Likewise.
2509 * testsuite/util/testsuite_allocator.h: Likewise.
2510 * testsuite/util/testsuite_api.h: Likewise.
2511 * testsuite/util/testsuite_common_types.h: Likewise.
2512 * testsuite/util/testsuite_random.h: Likewise.
2513 * testsuite/util/testsuite_rvalref.h: Likewise.
2514
3e0c9334
JW
25152016-10-13 Jonathan Wakely <jwakely@redhat.com>
2516
d67dd0be
JW
2517 * include/bits/shared_ptr_base.h: Include <functional>.
2518 [!__cpp_rtti]: Do not include <typeinfo>.
2519 * include/experimental/array: Do not include <functional>.
2520 * include/experimental/memory: Include <bits/functional_hash.h>
2521 instead of <functional>.
2522 * include/experimental/propagate_const: Include <bits/stl_function.h>,
2523 <bits/functional_hash.h>, and <bits/move.h> instead of <functional>.
2524 * include/experimental/tuple: Do not include <functional>.
2525 * include/std/future: Include <functional>.
2526 * include/std/memory: Do not include <functional>.
2527 * include/std/mutex: [_GLIBCXX_HAVE_TLS]: Likewise.
2528 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
2529 missing includes.
2530 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
2531 * testsuite/20_util/specialized_algorithms/memory_management_tools/
2532 1.cc: Likewise.
2533 * testsuite/30_threads/call_once/60497.cc: Likewise.
2534 * testsuite/30_threads/lock/2.cc: Likewise.
2535 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
2536 * testsuite/experimental/algorithm/sample.cc: Likewise.
2537 * testsuite/experimental/array/make_array.cc: Likewise.
2538 * testsuite/experimental/array/neg.cc: Likewise. Adjust dg-error line.
2539 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
2540 Adjust dg-error lines.
2541 * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
2542 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
2543 * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
2544 * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
2545 * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
2546
40799fe5
JW
2547 * testsuite/experimental/algorithm/sample.cc: Add missing header.
2548
10482a65
JW
2549 * include/experimental/propagate_const (element_type): Qualify
2550 declval.
2551
f49adbb8
JW
2552 * testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
2553 instead of assert.
2554
5117a23e
JW
2555 * include/experiumental/functional (boyer_moore_searcher)
2556 (__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
2557 with _GLIBCXX_STD_C.
2558 * include/std/functional: Likewise.
2559
0c0d2a4c
JW
2560 * include/std/chrono (floor): Replace non-constexpr operation.
2561 * testsuite/20_util/duration_cast/rounding.cc: Test conversion to
2562 durations with floating pointer representations.
2563
3396fcc0
JW
2564 * src/c++11/compatibility-thread-c++0x.cc (_Bind_simple)
2565 (_Bind_simple_helper, __bind_simple): Restore for ABI compat symbols.
2566
5579170b
JW
2567 * include/std/functional (_Bind_simple, _Bind_simple_helper)
2568 (__bind_simple): Remove.
2569 * include/std/future: Include <bits/invoke.h> instead of <functional>.
2570 (__future_base::_Task_state::_M_run)
2571 (__future_base::_Task_state::_M_run_delayed): Use lambda expressions
2572 instead of __bind_simple.
2573 (__future_base::_Task_state::_S_maybe_wrap_ref): Remove.
2574 (async): Use thread::__make_invoker instead of __bind_simple.
2575 * include/std/thread: Include <tuple> and <bits/invoke.h> instead of
2576 <functional>.
2577 (thread::_Invoker, thread::__make_invoker): Define helpers to do
2578 INVOKE(DECAY_COPY(f), DECAY_COPY(args)...).
2579
cc06c7f6
JW
2580 * include/std/functional (_Not_fn): Make exception specifications
2581 depend on whether negating the result can throw.
2582 * testsuite/20_util/not_fn/1.cc: Move to ...
2583 * testsuite/20_util/function_objects/not_fn/1.cc: ... here. Add tests
2584 for types that can throw when negated and that cannot be negated.
2585
3e0c9334
JW
2586 * include/bits/invoke.h (__invoke): Fix exception-specification.
2587 * include/std/functional (invoke): Likewise.
2588 * testsuite/20_util/function_objects/invoke/1.cc: New test.
2589
7daade99
PC
25902016-10-12 Paolo Carlini <paolo.carlini@oracle.com>
2591
2592 * testsuite/util/testsuite_hooks.h: Rewrite VERIFY in terms of
2593 __builtin_printf and __builtin_abort.
2594 * testsuite/lib/libstdc++.exp: Remove _GLIBCXX_ASSERT use.
2595 * scripts/testsuite_flags.in: Likewise.
2596 * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
2597 * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
2598 * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
2599 * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
2600 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise, adjust.
2601 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
2602 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
2603 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
2604 * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
2605 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
2606 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
2607 Likewise.
2608 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
2609 Likewise.
2610 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
2611 Likewise.
2612 * testsuite/27_io/objects/char/7.cc: Likewise.
2613 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
2614 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
2615 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
2616 * testsuite/18_support/50594.cc: Remove 'test' variable, adjust.
2617 * testsuite/18_support/bad_alloc/what.cc: Likewise.
2618 * testsuite/18_support/bad_cast/what.cc: Likewise.
2619 * testsuite/18_support/bad_exception/what.cc: Likewise.
2620 * testsuite/18_support/bad_typeid/what.cc: Likewise.
2621 * testsuite/18_support/exception/38732.cc: Likewise.
2622 * testsuite/18_support/exception/what.cc: Likewise.
2623 * testsuite/18_support/exception_ptr/64241.cc: Likewise.
2624 * testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
2625 * testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
2626 * testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
2627 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
2628 * testsuite/18_support/nested_exception/cons.cc: Likewise.
2629 * testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
2630 * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
2631 * testsuite/18_support/nested_exception/rethrow_nested.cc: Likewise.
2632 * testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
2633 * testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
2634 * testsuite/18_support/numeric_limits/digits10.cc: Likewise.
2635 * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
2636 * testsuite/18_support/numeric_limits/epsilon.cc: Likewise.
2637 * testsuite/18_support/numeric_limits/is_iec559.cc: Likewise.
2638 * testsuite/18_support/numeric_limits/is_signed.cc: Likewise.
2639 * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
2640 * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
2641 * testsuite/18_support/numeric_limits/min_max.cc: Likewise.
2642 * testsuite/18_support/numeric_limits/specialization_default_values.cc:
2643 Likewise.
2644 * testsuite/18_support/type_info/hash_code.cc: Likewise.
2645 * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
2646 * testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
2647 * testsuite/19_diagnostics/error_category/operators/equal.cc: Likewise.
2648 * testsuite/19_diagnostics/error_category/operators/
2649 not_equal.cc: Likewise.
2650 * testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
2651 * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
2652 * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
2653 * testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
2654 * testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
2655 * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
2656 * testsuite/19_diagnostics/error_condition/cons/1.cc: Likewise.
2657 * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
2658 * testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
2659 Likewise.
2660 * testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
2661 * testsuite/19_diagnostics/error_condition/operators/equal.cc:
2662 Likewise.
2663 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
2664 Likewise.
2665 * testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
2666 * testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
2667 * testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
2668 * testsuite/19_diagnostics/logic_error/what-big.cc: Likewise.
2669 * testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
2670 * testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
2671 * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
2672 * testsuite/19_diagnostics/runtime_error/what-big.cc: Likewise.
2673 * testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
2674 * testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
2675 * testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
2676 * testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
2677 * testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
2678 * testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
2679 * testsuite/20_util/addressof/1.cc: Likewise.
2680 * testsuite/20_util/align/1.cc: Likewise.
2681 * testsuite/20_util/align/2.cc: Likewise.
2682 * testsuite/20_util/allocator/1.cc: Likewise.
2683 * testsuite/20_util/allocator/10378.cc: Likewise.
2684 * testsuite/20_util/allocator/8230.cc: Likewise.
2685 * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
2686 Likewise.
2687 * testsuite/20_util/allocator_traits/members/construct.cc: Likewise.
2688 * testsuite/20_util/allocator_traits/members/destroy.cc: Likewise.
2689 * testsuite/20_util/allocator_traits/members/max_size.cc: Likewise.
2690 * testsuite/20_util/any/assign/exception.cc: Likewise.
2691 * testsuite/20_util/auto_ptr/1.cc: Likewise.
2692 * testsuite/20_util/auto_ptr/2.cc: Likewise.
2693 * testsuite/20_util/auto_ptr/3.cc: Likewise.
2694 * testsuite/20_util/auto_ptr/4.cc: Likewise.
2695 * testsuite/20_util/auto_ptr/5.cc: Likewise.
2696 * testsuite/20_util/auto_ptr/6.cc: Likewise.
2697 * testsuite/20_util/auto_ptr/7.cc: Likewise.
2698 * testsuite/20_util/bind/all_bound.cc: Likewise.
2699 * testsuite/20_util/bind/conv_result.cc: Likewise.
2700 * testsuite/20_util/bind/cv_quals.cc: Likewise.
2701 * testsuite/20_util/bind/cv_quals_2.cc
2702 * testsuite/20_util/bind/nested.cc: Likewise.
2703 * testsuite/20_util/bind/placeholders.cc: Likewise.
2704 * testsuite/20_util/bind/ref.cc: Likewise.
2705 * testsuite/20_util/bind/ref2.cc: Likewise.
2706 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
2707 * testsuite/20_util/duration/arithmetic/1.cc: Likewise.
2708 * testsuite/20_util/duration/arithmetic/2.cc: Likewise.
2709 * testsuite/20_util/duration/arithmetic/58850.cc: Likewise.
2710 * testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
2711 * testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
2712 * testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
2713 * testsuite/20_util/duration/cons/1.cc: Likewise.
2714 * testsuite/20_util/duration/cons/2.cc: Likewise.
2715 * testsuite/20_util/enable_if/requirements/typedefs.cc: Likewise.
2716 * testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Likewise.
2717 * testsuite/20_util/enable_shared_from_this/members/assign.cc:
2718 Likewise.
2719 * testsuite/20_util/exchange/1.cc: Likewise.
2720 * testsuite/20_util/forward/a.cc: Likewise.
2721 * testsuite/20_util/forward/b.cc: Likewise.
2722 * testsuite/20_util/forward/d.cc: Likewise.
2723 * testsuite/20_util/function/1.cc: Likewise.
2724 * testsuite/20_util/function/2.cc: Likewise.
2725 * testsuite/20_util/function/3.cc: Likewise.
2726 * testsuite/20_util/function/4.cc: Likewise.
2727 * testsuite/20_util/function/43397.cc: Likewise.
2728 * testsuite/20_util/function/5.cc: Likewise.
2729 * testsuite/20_util/function/6.cc: Likewise.
2730 * testsuite/20_util/function/7.cc: Likewise.
2731 * testsuite/20_util/function/8.cc: Likewise.
2732 * testsuite/20_util/function/9.cc: Likewise.
2733 * testsuite/20_util/function/assign/move.cc: Likewise.
2734 * testsuite/20_util/function/cons/move.cc: Likewise.
2735 * testsuite/20_util/function_objects/dr660.cc: Likewise.
2736 * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Likewise.
2737 * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
2738 * testsuite/20_util/hash/chi2_q_document_words.cc: Likewise.
2739 * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
2740 * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
2741 * testsuite/20_util/hash/operators/size_t.cc: Likewise.
2742 * testsuite/20_util/hash/quality.cc: Likewise.
2743 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
2744 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
2745 * testsuite/20_util/is_function/24808.cc: Likewise.
2746 * testsuite/20_util/is_object/24808.cc: Likewise.
2747 * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
2748 * testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
2749 * testsuite/20_util/owner_less/cmp.cc: Likewise.
2750 * testsuite/20_util/pair/1.cc: Likewise.
2751 * testsuite/20_util/pair/2.cc: Likewise.
2752 * testsuite/20_util/pair/3.cc: Likewise.
2753 * testsuite/20_util/pair/4.cc: Likewise.
2754 * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
2755 * testsuite/20_util/pair/moveable.cc: Likewise.
2756 * testsuite/20_util/pair/piecewise.cc: Likewise.
2757 * testsuite/20_util/pair/swap.cc: Likewise.
2758 * testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
2759 * testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
2760 * testsuite/20_util/ratio/comparisons/comp3.cc: Likewise.
2761 * testsuite/20_util/ratio/cons/cons1.cc: Likewise.
2762 * testsuite/20_util/ratio/operations/45866.cc: Likewise.
2763 * testsuite/20_util/ratio/operations/47913.cc: Likewise.
2764 * testsuite/20_util/ratio/operations/ops1.cc: Likewise.
2765 * testsuite/20_util/ratio/operations/ops2.cc: Likewise.
2766 * testsuite/20_util/ratio/operations/ops3.cc: Likewise.
2767 * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
2768 * testsuite/20_util/scoped_allocator/1.cc: Likewise.
2769 * testsuite/20_util/scoped_allocator/2.cc: Likewise.
2770 * testsuite/20_util/shared_ptr/assign/assign.cc: Likewise.
2771 * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
2772 * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
2773 * testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
2774 * testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
2775 * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
2776 Likewise.
2777 * testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
2778 * testsuite/20_util/shared_ptr/comparison/less.cc: Likewise.
2779 * testsuite/20_util/shared_ptr/cons/alias.cc: Likewise.
2780 * testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
2781 * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
2782 * testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
2783 * testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
2784 * testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
2785 * testsuite/20_util/shared_ptr/cons/nullptr.cc: Likewise.
2786 * testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
2787 * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
2788 * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Likewise.
2789 * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Likewise.
2790 * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_1.cc:
2791 Likewise.
2792 * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_2.cc:
2793 Likewise.
2794 * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
2795 * testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
2796 * testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
2797 * testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
2798 * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
2799 * testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
2800 * testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
2801 * testsuite/20_util/shared_ptr/hash/1.cc: Likewise.
2802 * testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
2803 * testsuite/20_util/shared_ptr/misc/42019.cc: Likewise.
2804 * testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
2805 * testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
2806 * testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
2807 * testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
2808 * testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
2809 * testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
2810 * testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
2811 * testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
2812 * testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
2813 * testsuite/20_util/shared_ptr/observers/owner_before.cc: Likewise.
2814 * testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
2815 * testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
2816 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
2817 Likewise.
2818 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
2819 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
2820 move_iterators/1.cc: Likewise.
2821 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
2822 move_iterators/1.cc: Likewise.
2823 * testsuite/20_util/temporary_buffer.cc: Likewise.
2824 * testsuite/20_util/time_point/1.cc: Likewise.
2825 * testsuite/20_util/time_point/2.cc: Likewise.
2826 * testsuite/20_util/time_point/3.cc: Likewise.
2827 * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
2828 * testsuite/20_util/tuple/48476.cc: Likewise.
2829 * testsuite/20_util/tuple/comparison_operators/comparisons.cc:
2830 Likewise.
2831 * testsuite/20_util/tuple/cons/allocators.cc: Likewise.
2832 * testsuite/20_util/tuple/cons/assignment.cc: Likewise.
2833 * testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
2834 * testsuite/20_util/tuple/cons/constructor.cc: Likewise.
2835 * testsuite/20_util/tuple/creation_functions/23978.cc: Likewise.
2836 * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
2837 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
2838 * testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
2839 Likewise.
2840 * testsuite/20_util/tuple/creation_functions/make_tuple.cc: Likewise.
2841 * testsuite/20_util/tuple/creation_functions/tie.cc: Likewise.
2842 * testsuite/20_util/tuple/creation_functions/tie2.cc: Likewise.
2843 * testsuite/20_util/tuple/cv_tuple_size.cc: Likewise.
2844 * testsuite/20_util/tuple/element_access/get.cc: Likewise.
2845 * testsuite/20_util/tuple/element_access/get_by_type.cc: Likewise.
2846 * testsuite/20_util/tuple/moveable.cc: Likewise.
2847 * testsuite/20_util/tuple/swap.cc: Likewise.
2848 * testsuite/20_util/tuple/tuple_size.cc: Likewise.
2849 * testsuite/20_util/typeindex/comparison_operators.cc: Likewise.
2850 * testsuite/20_util/typeindex/hash.cc: Likewise.
2851 * testsuite/20_util/typeindex/hash_code.cc: Likewise.
2852 * testsuite/20_util/typeindex/name.cc: Likewise.
2853 * testsuite/20_util/unique_ptr/assign/48635.cc: Likewise.
2854 * testsuite/20_util/unique_ptr/assign/move.cc: Likewise.
2855 * testsuite/20_util/unique_ptr/assign/move_array.cc: Likewise.
2856 * testsuite/20_util/unique_ptr/assign/nullptr.cc: Likewise.
2857 * testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise.
2858 * testsuite/20_util/unique_ptr/cons/nullptr.cc: Likewise.
2859 * testsuite/20_util/unique_ptr/cons/pointer.cc: Likewise.
2860 * testsuite/20_util/unique_ptr/cons/pointer_array.cc: Likewise.
2861 * testsuite/20_util/unique_ptr/cons/ptr_deleter.cc: Likewise.
2862 * testsuite/20_util/unique_ptr/creation/array.cc: Likewise.
2863 * testsuite/20_util/unique_ptr/creation/single.cc: Likewise.
2864 * testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
2865 * testsuite/20_util/unique_ptr/modifiers/43183.cc: Likewise.
2866 * testsuite/20_util/unique_ptr/specialized_algorithms/
2867 comparisons.cc: Likewise.
2868 * testsuite/20_util/unique_ptr/specialized_algorithms/
2869 comparisons_array.cc: Likewise.
2870 * testsuite/20_util/unique_ptr/specialized_algorithms/swap.cc:
2871 Likewise.
2872 * testsuite/20_util/uses_allocator/construction.cc: Likewise.
2873 * testsuite/20_util/uses_allocator/value.cc: Likewise.
2874 * testsuite/20_util/variant/run.cc: Likewise.
2875 * testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
2876 * testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
2877 * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
2878 Likewise.
2879 * testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
2880 * testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
2881 Likewise.
2882 * testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
2883 * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
2884 Likewise.
2885 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
2886 Likewise.
2887 * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
2888 Likewise.
2889 * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
2890 Likewise.
2891 * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
2892 Likewise.
2893 * testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
2894 * testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise.
2895 * testsuite/21_strings/basic_string/capacity/char/18654.cc: Likewise.
2896 * testsuite/21_strings/basic_string/capacity/char/2.cc: Likewise.
2897 * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
2898 Likewise.
2899 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise.
2900 * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
2901 Likewise.
2902 * testsuite/21_strings/basic_string/capacity/wchar_t/2.cc: Likewise.
2903 * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
2904 Likewise.
2905 * testsuite/21_strings/basic_string/cons/char/1.cc: Likewise.
2906 * testsuite/21_strings/basic_string/cons/char/2.cc: Likewise.
2907 * testsuite/21_strings/basic_string/cons/char/3.cc: Likewise.
2908 * testsuite/21_strings/basic_string/cons/char/4.cc: Likewise.
2909 * testsuite/21_strings/basic_string/cons/char/42261.cc: Likewise.
2910 * testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
2911 * testsuite/21_strings/basic_string/cons/char/6.cc: Likewise.
2912 * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
2913 * testsuite/21_strings/basic_string/cons/char/8.cc: Likewise.
2914 * testsuite/21_strings/basic_string/cons/char/moveable.cc: Likewise.
2915 * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Likewise.
2916 * testsuite/21_strings/basic_string/cons/wchar_t/1.cc: Likewise.
2917 * testsuite/21_strings/basic_string/cons/wchar_t/2.cc: Likewise.
2918 * testsuite/21_strings/basic_string/cons/wchar_t/3.cc: Likewise.
2919 * testsuite/21_strings/basic_string/cons/wchar_t/4.cc: Likewise.
2920 * testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
2921 * testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
2922 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Likewise.
2923 * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
2924 * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
2925 * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
2926 * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
2927 Likewise.
2928 * testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise.
2929 * testsuite/21_strings/basic_string/element_access/char/2.cc: Likewise.
2930 * testsuite/21_strings/basic_string/element_access/char/3.cc: Likewise.
2931 * testsuite/21_strings/basic_string/element_access/char/4.cc: Likewise.
2932 * testsuite/21_strings/basic_string/element_access/char/58163.cc:
2933 Likewise.
2934 * testsuite/21_strings/basic_string/element_access/char/empty.cc:
2935 Likewise.
2936 * testsuite/21_strings/basic_string/element_access/char/front_back.cc:
2937 Likewise.
2938 * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc:
2939 Likewise.
2940 * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc:
2941 Likewise.
2942 * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc:
2943 Likewise.
2944 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
2945 Likewise.
2946 * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
2947 Likewise.
2948 * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
2949 Likewise.
2950 * testsuite/21_strings/basic_string/element_access/wchar_t/
2951 front_back.cc: Likewise.
2952 * testsuite/21_strings/basic_string/init-list.cc: Likewise.
2953 * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
2954 Likewise.
2955 * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
2956 Likewise.
2957 * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
2958 Likewise.
2959 * testsuite/21_strings/basic_string/inserters_extractors/char/
2960 28277.cc: Likewise.
2961 * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
2962 Likewise.
2963 * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
2964 Likewise.
2965 * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
2966 Likewise.
2967 * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
2968 Likewise.
2969 * testsuite/21_strings/basic_string/inserters_extractors/char/8.cc:
2970 Likewise.
2971 * testsuite/21_strings/basic_string/inserters_extractors/char/9.cc:
2972 Likewise.
2973 * testsuite/21_strings/basic_string/inserters_extractors/pod/
2974 10081-in.cc: Likewise.
2975 * testsuite/21_strings/basic_string/inserters_extractors/pod/
2976 10081-out.cc: Likewise.
2977 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
2978 Likewise.
2979 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
2980 10.cc: Likewise.
2981 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
2982 11.cc: Likewise.
2983 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
2984 28277.cc: Likewise.
2985 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
2986 Likewise.
2987 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
2988 Likewise.
2989 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
2990 Likewise.
2991 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
2992 Likewise.
2993 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/8.cc:
2994 Likewise.
2995 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/9.cc:
2996 Likewise.
2997 * testsuite/21_strings/basic_string/modifiers/append/char/1.cc:
2998 Likewise.
2999 * testsuite/21_strings/basic_string/modifiers/append/char/2.cc:
3000 Likewise.
3001 * testsuite/21_strings/basic_string/modifiers/append/char/3.cc:
3002 Likewise.
3003 * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
3004 Likewise.
3005 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
3006 Likewise.
3007 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/2.cc:
3008 Likewise.
3009 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/3.cc:
3010 Likewise.
3011 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
3012 Likewise.
3013 * testsuite/21_strings/basic_string/modifiers/assign/char/1.cc:
3014 Likewise.
3015 * testsuite/21_strings/basic_string/modifiers/assign/char/2.cc:
3016 Likewise.
3017 * testsuite/21_strings/basic_string/modifiers/assign/char/3.cc:
3018 Likewise.
3019 * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
3020 Likewise.
3021 * testsuite/21_strings/basic_string/modifiers/assign/char/
3022 move_assign.cc: Likewise.
3023 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/1.cc:
3024 Likewise.
3025 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/2.cc:
3026 Likewise.
3027 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/3.cc:
3028 Likewise.
3029 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
3030 Likewise.
3031 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
3032 move_assign.cc: Likewise.
3033 * testsuite/21_strings/basic_string/modifiers/insert/char/1.cc:
3034 Likewise.
3035 * testsuite/21_strings/basic_string/modifiers/insert/char/2.cc:
3036 Likewise.
3037 * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
3038 Likewise.
3039 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/1.cc:
3040 Likewise.
3041 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/2.cc:
3042 Likewise.
3043 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
3044 Likewise.
3045 * testsuite/21_strings/basic_string/modifiers/pop_back/char/1.cc:
3046 Likewise.
3047 * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/1.cc:
3048 Likewise.
3049 * testsuite/21_strings/basic_string/modifiers/replace/char/1.cc:
3050 Likewise.
3051 * testsuite/21_strings/basic_string/modifiers/replace/char/2.cc:
3052 Likewise.
3053 * testsuite/21_strings/basic_string/modifiers/replace/char/3.cc:
3054 Likewise.
3055 * testsuite/21_strings/basic_string/modifiers/replace/char/4.cc:
3056 Likewise.
3057 * testsuite/21_strings/basic_string/modifiers/replace/char/5.cc:
3058 Likewise.
3059 * testsuite/21_strings/basic_string/modifiers/replace/char/6.cc:
3060 Likewise.
3061 * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
3062 Likewise.
3063 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/1.cc:
3064 Likewise.
3065 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/2.cc:
3066 Likewise.
3067 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/3.cc:
3068 Likewise.
3069 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/4.cc:
3070 Likewise.
3071 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/5.cc:
3072 Likewise.
3073 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/6.cc:
3074 Likewise.
3075 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
3076 Likewise.
3077 * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
3078 Likewise.
3079 * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
3080 Likewise.
3081 * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
3082 Likewise.
3083 * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
3084 Likewise.
3085 * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
3086 Likewise.
3087 * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
3088 Likewise.
3089 * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
3090 Likewise.
3091 * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
3092 Likewise.
3093 * testsuite/21_strings/basic_string/numeric_conversions/char/
3094 stoull.cc: Likewise.
3095 * testsuite/21_strings/basic_string/numeric_conversions/char/
3096 to_string.cc: Likewise.
3097 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3098 dr1261.cc: Likewise.
3099 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3100 stod.cc: Likewise.
3101 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3102 stof.cc: Likewise.
3103 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3104 stoi.cc: Likewise.
3105 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3106 stol.cc: Likewise.
3107 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3108 stold.cc: Likewise.
3109 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3110 stoll.cc: Likewise.
3111 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3112 stoul.cc: Likewise.
3113 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3114 stoull.cc: Likewise.
3115 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3116 to_wstring.cc: Likewise.
3117 * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
3118 Likewise.
3119 * testsuite/21_strings/basic_string/operations/compare/char/13650.cc:
3120 Likewise.
3121 * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
3122 Likewise.
3123 * testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
3124 Likewise.
3125 * testsuite/21_strings/basic_string/operations/compare/wchar_t/
3126 13650.cc: Likewise.
3127 * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
3128 Likewise.
3129 * testsuite/21_strings/basic_string/operations/data/char/1.cc:
3130 Likewise.
3131 * testsuite/21_strings/basic_string/operations/data/wchar_t/1.cc:
3132 Likewise.
3133 * testsuite/21_strings/basic_string/operations/find/char/1.cc:
3134 Likewise.
3135 * testsuite/21_strings/basic_string/operations/find/char/2.cc:
3136 Likewise.
3137 * testsuite/21_strings/basic_string/operations/find/char/3.cc:
3138 Likewise.
3139 * testsuite/21_strings/basic_string/operations/find/char/4.cc:
3140 Likewise.
3141 * testsuite/21_strings/basic_string/operations/find/char/5.cc:
3142 Likewise.
3143 * testsuite/21_strings/basic_string/operations/find/wchar_t/1.cc:
3144 Likewise.
3145 * testsuite/21_strings/basic_string/operations/find/wchar_t/2.cc:
3146 Likewise.
3147 * testsuite/21_strings/basic_string/operations/find/wchar_t/3.cc:
3148 Likewise.
3149 * testsuite/21_strings/basic_string/operations/find/wchar_t/4.cc:
3150 Likewise.
3151 * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
3152 Likewise.
3153 * testsuite/21_strings/basic_string/operations/rfind/char/1.cc:
3154 Likewise.
3155 * testsuite/21_strings/basic_string/operations/rfind/char/2.cc:
3156 Likewise.
3157 * testsuite/21_strings/basic_string/operations/rfind/char/3.cc:
3158 Likewise.
3159 * testsuite/21_strings/basic_string/operations/rfind/wchar_t/1.cc:
3160 Likewise.
3161 * testsuite/21_strings/basic_string/operations/rfind/wchar_t/2.cc:
3162 Likewise.
3163 * testsuite/21_strings/basic_string/operations/rfind/wchar_t/3.cc:
3164 Likewise.
3165 * testsuite/21_strings/basic_string/operations/substr/char/1.cc:
3166 Likewise.
3167 * testsuite/21_strings/basic_string/operations/substr/wchar_t/
3168 1.cc: Likewise.
3169 * testsuite/21_strings/basic_string/operators/char/1.cc: Likewise.
3170 * testsuite/21_strings/basic_string/operators/char/2.cc: Likewise.
3171 * testsuite/21_strings/basic_string/operators/char/3.cc: Likewise.
3172 * testsuite/21_strings/basic_string/operators/char/4.cc: Likewise.
3173 * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
3174 * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise.
3175 * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Likewise.
3176 * testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
3177 * testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
3178 * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
3179 * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
3180 * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
3181 * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
3182 * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
3183 * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
3184 * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
3185 * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
3186 * testsuite/21_strings/basic_string_view/element_access/char/
3187 1.cc: Likewise.
3188 * testsuite/21_strings/basic_string_view/element_access/char/
3189 empty.cc: Likewise.
3190 * testsuite/21_strings/basic_string_view/element_access/char/
3191 front_back.cc: Likewise.
3192 * testsuite/21_strings/basic_string_view/element_access/wchar_t/
3193 1.cc: Likewise.
3194 * testsuite/21_strings/basic_string_view/element_access/wchar_t/
3195 empty.cc: Likewise.
3196 * testsuite/21_strings/basic_string_view/element_access/wchar_t/
3197 front_back.cc: Likewise.
3198 * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
3199 * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
3200 * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
3201 * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
3202 Likewise.
3203 * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
3204 Likewise.
3205 * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
3206 Likewise.
3207 * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
3208 Likewise.
3209 * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
3210 char/1.cc: Likewise.
3211 * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
3212 wchar_t/1.cc: Likewise.
3213 * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
3214 char/1.cc: Likewise.
3215 * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
3216 wchar_t/1.cc: Likewise.
3217 * testsuite/21_strings/basic_string_view/operations/compare/char/
3218 1.cc: Likewise.
3219 * testsuite/21_strings/basic_string_view/operations/compare/char/
3220 13650.cc: Likewise.
3221 * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
3222 1.cc: Likewise.
3223 * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
3224 13650.cc: Likewise.
3225 * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
3226 Likewise.
3227 * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
3228 Likewise.
3229 * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
3230 Likewise.
3231 * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
3232 Likewise.
3233 * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
3234 Likewise.
3235 * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
3236 Likewise.
3237 * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
3238 Likewise.
3239 * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
3240 Likewise.
3241 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
3242 1.cc: Likewise.
3243 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
3244 2.cc: Likewise.
3245 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
3246 3.cc: Likewise.
3247 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
3248 4.cc: Likewise.
3249 * testsuite/21_strings/basic_string_view/operations/rfind/char/
3250 1.cc: Likewise.
3251 * testsuite/21_strings/basic_string_view/operations/rfind/char/
3252 2.cc: Likewise.
3253 * testsuite/21_strings/basic_string_view/operations/rfind/char/
3254 3.cc: Likewise.
3255 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
3256 1.cc: Likewise.
3257 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
3258 2.cc: Likewise.
3259 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
3260 3.cc: Likewise.
3261 * testsuite/21_strings/basic_string_view/operations/string_conversion/
3262 1.cc: Likewise.
3263 * testsuite/21_strings/basic_string_view/operations/substr/char/
3264 1.cc: Likewise.
3265 * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/
3266 1.cc: Likewise.
3267 * testsuite/21_strings/basic_string_view/operators/char/2.cc:
3268 Likewise.
3269 * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
3270 Likewise.
3271 * testsuite/21_strings/c_strings/char/1.cc: Likewise.
3272 * testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
3273 * testsuite/21_strings/char_traits/requirements/char/1.cc: Likewise.
3274 * testsuite/21_strings/char_traits/requirements/char/57704.cc:
3275 Likewise.
3276 * testsuite/21_strings/char_traits/requirements/short/1.cc: Likewise.
3277 * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Likewise.
3278
3279 * doc/xml/manual/test.xml: Fix typo.
3280
164b41eb
JW
32812016-10-12 Jonathan Wakely <jwakely@redhat.com>
3282
e7722f11
JW
3283 * doc/xml/manual/status_cxx2017.xml: Add std::sample status.
3284 * doc/html/*: Regenerate.
3285 * include/experimental/algorithm (__sample): Move to bits/stl_algo.h
3286 and into namespace std.
3287 * include/bits/stl_algo.h (__sample): Define here. Fix invalid use
3288 of input iterator. Defend against overloaded comma operator.
3289 (sample): Define for C++17.
3290 * testsuite/25_algorithms/sample/1.cc: New test.
3291
432b6d95
JW
3292 * testsuite/util/testsuite_common_types.h
3293 (bitwise_assignment_operators): Use direct-initialization for C++11
3294 and later, to avoid CopyConstructible requirement.
3295 * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
3296 line numbers.
3297 * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
3298 * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
3299 * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
3300 * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
3301 Adjust expected errors and line numbers.
3302
cfbdc34f
JW
3303 * include/std/mutex [_GLIBCXX_HAVE_TLS] (_Once_call): Remove.
3304 (call_once) [_GLIBCXX_HAVE_TLS]: Simplify by removing _Once_call.
3305
08a53a2e
JW
3306 * include/bits/stl_uninitialized.h
3307 (__uninitialized_default_novalue_n_1<true>): Add missing return.
3308 * testsuite/20_util/specialized_algorithms/memory_management_tools/
3309 1.cc: Check return values of uninitialized_xxx_n algorithms.
3310
40571365
JW
3311 * libsupc++/nested_exception.h (throw_with_nested): Remove return.
3312
164b41eb
JW
3313 * doc/xml/manual/intro.xml: Document LWG 2442 status.
3314 * include/std/mutex [_GLIBCXX_HAVE_TLS] (__once_call_impl): Remove.
3315 [_GLIBCXX_HAVE_TLS] (_Once_call): Declare primary template and define
3316 partial specialization to unpack args and forward to std::invoke.
3317 (call_once) [_GLIBCXX_HAVE_TLS]: Use forward_as_tuple and _Once_call
3318 instead of __bind_simple and __once_call_impl.
3319 (call_once) [!_GLIBCXX_HAVE_TLS]: Use __invoke instead of
3320 __bind_simple.
3321 * testsuite/30_threads/call_once/dr2442.cc: New test.
3322
2c15eace
JW
33232016-10-11 Jonathan Wakely <jwakely@redhat.com>
3324
4bb4acee
JW
3325 * include/bits/stl_list.h (assign(initializer_list<value_type>)): Call
3326 _M_assign_dispatch directly with correct tag.
3327
0470fad0
JW
3328 * doc/xml/manual/intro.xml: Document LWG 2484 status.
3329 * libsupc++/nested_exception.h (_Throw_with_nested_impl)
3330 (_Throw_with_nested_helper): Remove.
3331 (__throw_with_nested_impl): New overloaded functions to implement
3332 throw_with_nested logic.
3333 (throw_with_nested): Call __throw_with_nested_impl.
3334 (_Rethrow_if_nested_impl): Remove
3335 (__rethrow_if_nested_impl): New overloaded functions to implement
3336 rethrow_if_nested logic.
3337 (rethrow_if_nested): Call __rethrow_if_nested_impl.
3338 * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
3339 problem cases from LWG 2484.
3340
bf1de1ac
JW
3341 * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
3342 Register printer for std::__cxx11::list.
3343 * python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
3344 std::__cxx11::list as well as std::list.
3345
7571121f
JW
3346 * include/experimental/string_view (basic_string_view::_S_compare):
3347 Remove redundant const from return type.
3348 * include/std/string_view (basic_string_view:_S_compare): Likewise.
3349
2c15eace
JW
3350 * include/bits/std_mutex.h (mutex::native_handle)
3351 (lock_guard(mutex_type&, adopt_lock_t)
3352 (unique_lock(mutex_type&, adopt_lock_t): Add noexcept.
3353 * include/std/mutex (recursive_mutex, timed_mutex)
3354 (recursive_timed_mutex): Likewise.
3355
5c248975
JW
33562016-10-10 Jonathan Wakely <jwakely@redhat.com>
3357
3358 * doc/xml/manual/appendix_contributing.xml (contrib.organization):
3359 Replace <literallayout> with nested <variablelist> elements. Update
3360 some more outdated text.
3361 * doc/html/*: Regenerate.
3362
1725d05d
VV
33632016-10-10 Ville Voutilainen <ville.voutilainen@gmail.com>
3364
3365 Make any's copy assignment operator exception-safe,
3366 don't copy the underlying value when any is moved,
3367 make in_place constructors explicit.
3368 * include/std/any (any(in_place_type_t<_ValueType>, _Args&&...)):
3369 Make explicit.
3370 (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
3371 Likewise.
3372 (operator=(const any&)): Make strongly exception-safe.
3373 (operator=(any&&)): reset() unconditionally in the case where
3374 rhs has a value.
3375 (operator=(_ValueType&&)): Indent the return type.
3376 (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
3377 * testsuite/20_util/any/assign/2.cc: Adjust.
3378 * testsuite/20_util/any/assign/exception.cc: New.
3379 * testsuite/20_util/any/cons/2.cc: Adjust.
3380 * testsuite/20_util/any/cons/explicit.cc: New.
3381 * testsuite/20_util/any/misc/any_cast_neg.cc: Ajust.
3382
208b8b69
JW
33832016-10-10 Jonathan Wakely <jwakely@redhat.com>
3384
db625934
JW
3385 * doc/xml/manual/appendix_contributing.xml (contrib.organization):
3386 Describe other subdirectories and add markup. Remove outdated
3387 reference to check-script target.
3388 * doc/html/*: Regenerate.
3389
e2be4477
JW
3390 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status.
3391
a3dbb635
JW
3392 * libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
3393 with noexcept.
3394
40962ac0
JW
3395 * include/std/functional (_Bind_result::__enable_if_void): Use alias
3396 template instead of class template.
3397 (_Bind_result::__disable_if_void): Likewise.
3398 (_Bind_result::__call): Adjust uses of __enable_if_void and
3399 __disable_if_void.
3400
9e023e33
JW
3401 * doc/xml/manual/intro.xml: Document DR 2296 status.
3402 * doc/xml/manual/status_cxx2017.xml: Update status.
3403 * include/bits/move.h (__addressof): Add _GLIBCXX_CONSTEXPR and
3404 call __builtin_addressof.
3405 (addressof): Add _GLIBCXX17_CONSTEXPR.
3406 * testsuite/20_util/addressof/requirements/constexpr.cc: New test.
3407 * testsuite/20_util/forward/c_neg.cc: Adjust dg-error lineno.
3408 * testsuite/20_util/forward/f_neg.cc: Likewise.
3409
46942c81
JW
3410 * include/bits/allocator.h (allocator<T>::is_always_equal): Define.
3411 * testsuite/20_util/allocator/requirements/typedefs.cc: Test for
3412 is_always_equal.
3413 * testsuite/util/testsuite_allocator.h
3414 (uneq_allocator::is_always_equal): Define as false_type.
3415
f2e79496
JW
3416 * include/experimental/numeric (gcd, lcm): Make bool arguments
3417 ill-formed.
3418 * include/std/numeric (gcd, lcm): Likewise.
3419 * testsuite/26_numerics/gcd/gcd_neg.cc: New test.
3420 * testsuite/26_numerics/lcm/lcm_neg.cc: New test.
3421
208b8b69
JW
3422 * include/bits/shared_ptr.h (enable_shared_from_this::weak_from_this):
3423 Add noexcept.
3424 * include/bits/shared_ptr_base.h
3425 (__enable_shared_from_this::weak_from_this): Likewise.
3426 * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
3427 Test exception-specification of weak_from_this.
3428
873c7d5a
JW
34292016-10-07 Jonathan Wakely <jwakely@redhat.com>
3430
296002c6
JW
3431 * doc/xml/manual/status_cxx1998.xml: Improve documentation of
3432 implementation-defined properties.
3433 * doc/xml/manual/status_cxx2011.xml: Likewise.
3434 * doc/xml/manual/status_cxx2017.xml: Likewise.
3435
873c7d5a
JW
3436 * doc/xml/manual/status_cxx2017.xml: Update status.
3437 * include/std/type_traits (has_unique_object_representations): Define.
3438 * testsuite/20_util/has_unique_object_representations/value.cc: New.
3439 * testsuite/20_util/has_unique_object_representations/requirements/
3440 explicit_instantiation.cc: New.
3441 * testsuite/20_util/has_unique_object_representations/requirements/
3442 typedefs.cc: New.
3443
937ec71a
JW
34442016-10-06 Jonathan Wakely <jwakely@redhat.com>
3445
3446 * doc/xml/manual/status_cxx2011.xml: Update status.
3447 * include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
3448 New helpers for recursive OUTERMOST.
3449 (__outermost): Use __outermost_type::_S_outermost.
3450 (__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
3451 (scoped_allocator_adaptor::__outermost_alloc_traits): Use new
3452 __outermost_type helper.
3453 (scoped_allocator_adaptor::_Constructible): New alias template.
3454 (scoped_allocator_adaptor::scoped_allocator_adaptor<_Outer2>):
3455 Constrain template constructors.
3456 * testsuite/20_util/scoped_allocator/3.cc: New test.
3457 * testsuite/20_util/scoped_allocator/outermost.cc: New test.
3458
78ec9c15
JW
34592016-10-05 Jonathan Wakely <jwakely@redhat.com>
3460
aaae096a
JW
3461 PR libstdc++/70564
3462 * testsuite/20_util/not_fn/1.cc: Fix test.
3463 * testsuite/experimental/functional/not_fn.cc: Likewise.
3464
92805612
JW
3465 PR libstdc++/70101
3466 * include/bits/stl_queue.h (priority_queue): Fix allocator-extended
3467 constructors.
3468 * testsuite/23_containers/priority_queue/allocator.cc: New test.
3469
a2a64b49
JW
3470 PR libstdc++/77864
3471 * include/bits/stl_map.h (map::map()): Use nothrow constructibility
3472 of comparison function in conditional noexcept.
3473 * include/bits/stl_multimap.h (multimap::multimap()): Likewise.
3474 * include/bits/stl_multiset.h (multiset::multiset()): Likewise.
3475 * include/bits/stl_set.h (set::set()): Likewise.
3476 * testsuite/23_containers/map/cons/noexcept_default_construct.cc:
3477 New test.
3478 * testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
3479 Likewise.
3480 * testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
3481 Likewise.
3482 * testsuite/23_containers/set/cons/noexcept_default_construct.cc:
3483 Likewise.
3484
d72d690a
JW
3485 * include/bits/node_handle.h (_Node_handle): Remove invalid and unused
3486 alias declaration.
3487
78ec9c15
JW
3488 PR libstdc++/70564
3489 * include/experimental/functional (_Not_fn): Remove.
3490 (not_fn): Use std::_Not_fn.
3491 * include/std/functional (_Not_fn): Add second parameter to
3492 disambiguate copying from initialization by not_fn. Define for C++14.
3493 (not_fn): Add second argument to initialization.
3494 * testsuite/20_util/not_fn/1.cc: Copy call wrapper using
3495 direct-initialization.
3496
38aee22c
FD
34972016-10-03 François Dumont <fdumont@gcc.gnu.org>
3498
3499 * src/c++11/shared_ptr.cc (mask, invalid, get_mutex): Move
3500 declaration...
3501 * src/c++11/mutex_pool.h: ... here. New.
3502 * src/c++11/debug.cc: Use latter.
3503
6a0d23af
JW
35042016-10-03 Jonathan Wakely <jwakely@redhat.com>
3505
606dda21
JW
3506 * doc/xml/manual/status_cxx2017.xml: Update gcd/lcm status.
3507 * doc/html/*: Regenerate.
3508 * include/experimental/numeric (__abs): Move to <numeric>.
3509 (gcd, lcm): Use __detail::gcd and __detail::lcm.
3510 * include/std/numeric (__detail::__abs_integral)
3511 (__detail::__gcd, __detail::__lcm): Define.
3512 (gcd, lcm): Define for C++17.
3513 * testsuite/26_numerics/gcd/1.cc: New test.
3514 * testsuite/26_numerics/lcm/1.cc: New test.
3515 * testsuite/experimental/numeric/gcd.cc: Swap contents with ...
3516 * testsuite/experimental/numeric/lcd.cc: ... this.
3517
e347987d
JW
3518 PR libstdc++/68323
3519 PR libstdc++/77794
3520 * config/abi/pre/gnu-versioned-namespace.ver: Add exports for
3521 __cxa_thread_atexit and __gnu_cxx::__freeres.
3522 * include/Makefile.am: Add <experimental/bits/lfts_config.h>
3523 * include/Makefile.in: Regenerate.
3524 * include.bits/basic_string.h: Fix nesting of versioned namespaces.
3525 * include/bits/c++config: Declare versioned namespaces for literals.
3526 * include/bits/regex.h (basic_regex, match_results): Add workarounds
3527 for PR c++/59256.
3528 * include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
3529 * include/std/chrono: Likewise.
3530 * include/std/complex: Likewise.
3531 * include/std/string_view: Likewise.
3532 * include/std/variant: Likewise. Add workaround for PR c++/59256.
3533 * include/experimental/bits/fs_fwd.h: Declare versioned namespace.
3534 * include/experimental/bits/lfts_config.h: Declare versioned
3535 namespaces.
3536 * include/experimental/algorithm: Include
3537 <experimental/bits/lfts_config.h>.
3538 * include/experimental/any: Likewise.
3539 * include/experimental/bits/erase_if.h: Likewise.
3540 * include/experimental/chrono: Likewise.
3541 * include/experimental/functional: Likewise.
3542 * include/experimental/memory_resource: Likewise.
3543 * include/experimental/optional: Likewise.
3544 * include/experimental/propagate_const: Likewise.
3545 * include/experimental/random: Likewise.
3546 * include/experimental/ratio: Likewise.
3547 * include/experimental/system_error: Likewise.
3548 * include/experimental/tuple: Likewise.
3549 * include/experimental/type_traits: Likewise.
3550 * include/experimental/utility: Likewise.
3551 * include/experimental/string_view: Likewise. Fix nesting of
3552 versioned namespaces.
3553 * include/experimental/bits/string_view.tcc: Reopen inline namespace
3554 for non-inline function definitions.
3555 * testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
3556 * testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
3557 * testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
3558 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
3559 Likewise.
3560 * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
3561 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
3562 * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
3563 * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
3564 * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
3565 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
3566
6a0d23af
JW
3567 PR libstdc++/77814
3568 * include/bits/std_abs.h: Use "C++" language linkage.
3569 * testsuite/17_intro/headers/c++2011/linkage.cc: Move <complex.h> to
3570 the end. Add <stdalign.h>.
3571
3fe2ddae
VV
35722016-10-03 Ville Voutilainen <ville.voutilainen@gmail.com>
3573
3574 PR libstdc++/77802
3575 * testsuite/20_util/tuple/77802.cc: New.
3576
3577 Revert:
3578 2016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
3579 Implement LWG 2729 for tuple.
3580 * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
3581 Suppress conditionally.
3582 (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
3583 (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
3584 (_Tuple_impl(const _Head&)): Constrain.
3585 (_Tuple_impl(_UHead&&)): Likewise.
3586 (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
3587 (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
3588 (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
3589 (operator=(const tuple&)): Enable conditionally.
3590 (operator=(tuple&&)): Suppress conditionally.
3591 (operator=(const tuple<_UElements...>&)): Constrain.
3592 (operator=(tuple<_UElements...>&&)): Likewise.
3593 (operator=(const tuple&)): Enable conditionally (2-param tuple).
3594 (operator=(tuple&&)): Suppress conditionally (2-param tuple).
3595 (operator=(const tuple<_U1, _U2>&)): Constrain.
3596 (operator=(tuple<_U1, _U2>&&)): Likewise.
3597 (operator=(const pair<_U1, _U2>&)): Likewise.
3598 (operator=(pair<_U1, _U2>&&)): Likewise.
3599 * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
3600 * testsuite/20_util/tuple/tuple_traits.cc: New.
3601
9e28a774
JW
36022016-09-30 Jonathan Wakely <jwakely@redhat.com>
3603
36105dbd
JW
3604 PR libstdc++/77795
3605 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): Use -std=gnu++11 to check
3606 for gets.
3607 * config.h.in: Regenerate.
3608 * configure: Regenerate.
3609 * include/c_global/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Only declare
3610 for C++98 and C++11.
3611 * include/c_std/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Likewise.
3612 * testsuite/27_io/headers/cstdio/functions_neg.cc: New test.
3613
37b204de
JW
3614 * doc/xml/manual/intro.xml: Document LWG 2192 changes.
3615 * doc/html/*: Regenerate.
3616 * include/Makefile.am: Add bits/std_abs.h.
3617 * include/Makefile.in: Regenerate.
3618 * include/bits/std_abs.h: New header defining all required overloads
3619 of std::abs in one place (LWG 2294).
3620 * include/c_global/cmath (abs(double), abs(float), abs(long double)):
3621 Move to bits/std_abs.h.
3622 (abs<_Tp>(_Tp)): Remove.
3623 * include/c_global/cstdlib (abs(long), abs(long long), abs(__int<N>)):
3624 Move to bits/std_abs.h.
3625 * testsuite/26_numerics/headers/cmath/dr2192.cc: New test.
3626 * testsuite/26_numerics/headers/cmath/dr2192_neg.cc: New test.
3627 * testsuite/26_numerics/headers/cstdlib/dr2192.cc: New test.
3628 * testsuite/26_numerics/headers/cstdlib/dr2192_neg.cc: New test.
3629
9e28a774
JW
3630 PR libstdc++/77801
3631 * include/experimental/numeric: Include <numeric>.
3632 (__abs): Define.
3633 (gcd, lcm): Use __abs instead of std::abs.
3634 * testsuite/experimental/numeric/77801.cc: New test.
3635 * testsuite/experimental/numeric/gcd.cc: Test unsigned inputs.
3636 * testsuite/experimental/numeric/lcm.cc: Likewise.
3637
a181f672
VV
36382016-09-29 Ville Voutilainen <ville.voutilainen@gmail.com>
3639
3640 Make optional::reset noexcept, make optional::value
3641 work in constant expressions.
3642 * include/std/optional (_M_get): Make constexpr.
3643 (reset): Make noexcept.
3644 * testsuite/20_util/optional/assignment/7.cc: New.
3645 * testsuite/20_util/optional/observers/6.cc: New.
3646
998e01a6
JW
36472016-09-29 Jonathan Wakely <jwakely@redhat.com>
3648
3649 * include/c_global/cmath (hypot, __hypot3): Move C++17 overloads
3650 outside _GLIBCXX_USE_C99_MATH_TR1 condition.
3651
6d49b790
AM
36522016-09-29 Alan Modra <amodra@gmail.com>
3653
3654 * configure.ac (LONG_DOUBLE_COMPAT_FLAGS): New ACSUBST.
3655 * src/Makefile.am (compatibility-ldbl.o, compatibility-ldbl.lo):
3656 Use LONG_DOUBLE_COMPAT_FLAGS.
3657 * Makefile.in: Regenerate.
3658 * configure: Regenerate.
3659 * doc/Makefile.in: Regenerate.
3660 * include/Makefile.in: Regenerate.
3661 * libsupc++/Makefile.in: Regenerate.
3662 * po/Makefile.in: Regenerate.
3663 * python/Makefile.in: Regenerate.
3664 * src/Makefile.in: Regenerate.
3665 * src/c++11/Makefile.in: Regenerate.
3666 * src/c++98/Makefile.in: Regenerate.
3667 * src/filesystem/Makefile.in: Regenerate.
3668 * testsuite/Makefile.in: Regenerate.
3669
1b4be62a
JW
36702016-09-28 Jonathan Wakely <jwakely@redhat.com>
3671
b236debd
JW
3672 * include/std/chrono (system_clock): Fix typo in comment.
3673
fd5effb1
JW
3674 * include/experimental/bits/fs_fwd.h (file_time_type): Simplify
3675 definition.
3676 * src/filesystem/ops.cc (file_time): Take error_code parameter and
3677 check for overflow.
3678 (do_copy_file, last_write_time): Pass error_code in file_time calls.
3679 * testsuite/experimental/filesystem/operations/last_write_time.cc:
3680 New.
3681 * testsuite/util/testsuite_fs.h (scoped_file): Define RAII helper.
3682
1b4be62a
JW
3683 PR libstdc++/77686
3684 * include/std/functional (_Any_data): Add may_alias attribute.
3685
b658669d
JW
36862016-09-27 Jonathan Wakely <jwakely@redhat.com>
3687
4940de30
JW
3688 * doc/xml/manual/status_cxx2017.xml: Update status.
3689 * doc/html/*: Regenerate.
3690 * include/std/functional (__cpp_lib_boyer_moore_searcher): Define.
3691 * testsuite/20_util/function_objects/searchers.cc: Test feature macro.
3692
b658669d
JW
3693 * doc/xml/manual/status_cxx2017.xml: Update status.
3694 * include/c_global/cmath (hypot): Add three-dimensional overloads.
3695 * testsuite/26_numerics/headers/cmath/hypot.cc: New.
3696
71ade764
VV
36972016-09-26 Ville Voutilainen <ville.voutilainen@gmail.com>
3698
3699 PR libstdc++/77727
3700 * include/std/optional (optional(const optional<_Up>&)):
3701 Default-initialize the base and use emplace.
3702 (optional(optional<_Up>&&)): Likewise.
3703 * testsuite/20_util/optional/cons/77727.cc: New.
3704
f2fe9e0a
FD
37052016-09-26 François Dumont <fdumont@gcc.gnu.org>
3706
3707 * include/debug/safe_base.h
3708 (_Safe_iterator_base::_M_detach_single): Make public.
3709
976160b9
JW
37102016-09-26 Jonathan Wakely <jwakely@redhat.com>
3711
1a08d2da
JW
3712 * include/bits/range_access.h (__cpp_lib_array_constexpr): Do not
3713 redefine macro defined in <bits/stl_iterator.h>.
3714
976160b9
JW
3715 * include/bits/stl_map.h (map::extract(const_iterator)): Assert that
3716 iterator is not past-the-end.
3717 * include/bits/stl_multimap.h (multimap::extract(const_iterator)):
3718 Likewise.
3719 * include/bits/stl_multiset.h (multiset::extract(const_iterator)):
3720 Likewise.
3721 * include/bits/stl_set.h (set::extract(const_iterator)): Likewise.
3722 * include/bits/unordered_map.h (unordered_map::extract(const_iterator))
3723 (unordered_multimap::extract(const_iterator)): Likewise.
3724 * include/bits/unordered_set.h (unordered_set::extract(const_iterator))
3725 (unordered_multiset::extract(const_iterator)): Likewise.
3726
a38814c0
VV
37272016-09-26 Ville Voutilainen <ville.voutilainen@gmail.com>
3728
3729 PR libstdc++/77717
3730 * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
3731 Fix an out-of-bounds access.
3732
81fea426
MP
37332016-09-26 Marek Polacek <polacek@redhat.com>
3734
3735 PR c/7652
3736 * libsupc++/hash_bytes.cc: Add [[gnu::fallthrough]].
3737
edc69abb
FD
37382016-09-25 François Dumont <fdumont@gcc.gnu.org>
3739
d8bbd665
FD
3740 * src/c++11/debug.cc: Include debug/vector. Include cctype. Remove
3741 functional.
3742 (get_safe_base_mutex): Get mutex based on address lowest non nil bits.
3743 * testsuite/23_containers/vector/debug/mutex_association.cc: New.
3744
5d045324
FD
3745 * include/debug/bitset (bitset::reference::reference(const _Base_ref&,
3746 bitset*)): Remove __unused__ attribute.
3747 * include/debug/safe_base.h (_Safe_iterator_base): Make
3748 _Safe_sequence_base a friend.
3749 (_Safe_iterator_base::_M_attach): Make protected.
3750 (_Safe_iterator_base::_M_attach_single): Likewise.
3751 (_Safe_iterator_base::_M_detach): Likewise.
3752 (_Safe_iterator_base::_M_detach_single): Likewise.
3753 (_Safe_sequence_base): Make _Safe_iterator_base a friend.
3754 (_Safe_sequence_base::_Safe_sequence_base(_Safe_sequence_base&&)): New.
3755 (_Safe_sequence_base::_M_swap): Make protected.
3756 (_Safe_sequence_base::_M_attach): Make private.
3757 (_Safe_sequence_base::_M_attach_single): Likewise.
3758 (_Safe_sequence_base::_M_detach): Likewise.
3759 (_Safe_sequence_base::_M_detach_single): Likewise.
3760 * include/debug/safe_container.h
3761 (_Safe_container::_Safe_container(_Safe_container&&)): Make default.
3762 * include/debug/safe_iterator.h
3763 (_Safe_iterator::operator++()): Name __scoped_lock instance.
3764 * include/debug/safe_iterator.tcc: Remove trailing line.
3765 * include/debug/safe_unordered_base.h
3766 (_Safe_local_iterator_base::_M_attach): Make protected.
3767 (_Safe_local_iterator_base::_M_attach_single): Likewise.
3768 (_Safe_local_iterator_base::_M_detach): Likewise.
3769 (_Safe_local_iterator_base::_M_detach_single): Likewise.
3770 (_Safe_unordered_container_base): Make _Safe_local_iterator_base friend.
3771 (_Safe_unordered_container_base::_M_attach_local): Make private.
3772 (_Safe_unordered_container_base::_M_attach_local_single): Likewise.
3773 (_Safe_unordered_container_base::_M_detach_local): Likewise.
3774 (_Safe_unordered_container_base::_M_detach_local_single): Likewise.
3775
edc69abb
FD
3776 * include/parallel/algo.h: Generalize usage of std::__iterator_category.
3777 Adjust whitespaces.
3778
a922c5ff
JW
37792016-09-23 Jonathan Wakely <jwakely@redhat.com>
3780
13190419
JW
3781 PR libstdc++/56166
3782 PR libstdc++/77582
3783 * include/bits/basic_string.h (basic_string::clear()): Drop reference
3784 and use empty rep.
3785 * include/ext/rc_string_base.h (__rc_string_base::_M_clear()):
3786 Likewise.
3787 * testsuite/21_strings/basic_string/56166.cc: New.
3788 * testsuite/ext/vstring/modifiers/clear/56166.cc: New.
3789
a922c5ff
JW
3790 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
3791 (basic_string::erase(size_type, size_type)): Add fast path for
3792 truncating the string, by calling _M_set_length directly.
3793 (basic_string::erase(__const_iterator, __const_iterator)): Likewise.
3794 * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
3795 (basic_string::resize(size_type, _CharT)): Likewise.
3796
7be8d663
JM
37972016-09-22 Jason Merrill <jason@redhat.com>
3798
3799 * configure.ac: Define HAVE_MEMALIGN for newlib.
3800
320c7be3
SH
38012015-09-23 Sebastian Huber <sebastian.huber@embedded-brains.de>
3802
3803 * config/cpu/m68k/atomicity.h: Adjust comment.
3804 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Honor
3805 explicit atomicity_dir setup via configure.host.
3806 * configure.host (rtems-*): Set atomicity_dir.
3807 * configure: Regenerate.
3808
2dbe56bd
JW
38092016-09-22 Jonathan Wakely <jwakely@redhat.com>
3810
3811 Implement C++17 node extraction and insertion (P0083R5)
3812 * doc/xml/manual/status_cxx2017.xml: Document status.
3813 * doc/html/*: Regenerate.
3814 * include/Makefile.am: Add bits/node_handle.h and reorder.
3815 * include/Makefile.in: Regenerate.
3816 * include/bits/hashtable.h (_Hashtable::node_type)
3817 (_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node)
3818 (_Hashtable::_M_reinsert_node_multi, _Hashtable::extract)
3819 (_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define.
3820 (_Hash_merge_helper): Define primary template.
3821 * include/bits/node_handle.h: New header.
3822 * include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as
3823 friend.
3824 (map::node_type, map::insert_return_type, map::extract, map::merge)
3825 (map::insert(node_type&&), map::insert(const_iterator, node_type&&)):
3826 Define new members.
3827 (_Rb_tree_merge_helper): Specialize for map.
3828 * include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper
3829 as friend.
3830 (multimap::node_type, multimap::extract, multimap::merge)
3831 (multimap::insert(node_type&&))
3832 (multimap::insert(const_iterator, node_type&&)): Define.
3833 (_Rb_tree_merge_helper): Specialize for multimap.
3834 * include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper
3835 as friend.
3836 (multiset::node_type, multiset::extract, multiset::merge)
3837 (multiset::insert(node_type&&))
3838 (multiset::insert(const_iterator, node_type&&)): Define.
3839 * include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as
3840 friend.
3841 (set::node_type, set::insert_return_type, set::extract, set::merge)
3842 (set::insert(node_type&&), set::insert(const_iterator, node_type&&)):
3843 Define.
3844 (_Rb_tree_merge_helper): Specialize for set.
3845 * include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend.
3846 (_Rb_tree::node_type, _Rb_tree::insert_return_type)
3847 (_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal)
3848 (_Rb_tree::_M_reinsert_node_hint_unique)
3849 (_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract)
3850 (_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define.
3851 (_Rb_tree_merge_helper): Specialize for multiset.
3852 * include/bits/unordered_map.h (unordered_map): Declare
3853 unordered_map<> and unordered_multimap<> as friends.
3854 (unordered_map::node_type, unordered_map::insert_return_type)
3855 (unordered_map::extract, unordered_map::merge)
3856 (unordered_map::insert(node_type&&))
3857 (unordered_map::insert(const_iterator, node_type&&))
3858 (unordered_multimap): Declare _Hash_merge_helper as friend.
3859 (unordered_multimap::node_type, unordered_multimap::extract)
3860 (unordered_multimap::merge, unordered_multimap::insert(node_type&&))
3861 (unordered_multimap::insert(const_iterator, node_type&&)): Define.
3862 (_Hash_merge_helper): Specialize for unordered maps and multimaps.
3863 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
3864 Declare _Hash_merge_helper as friend.
3865 (unordered_set::node_type, unordered_set::insert_return_type)
3866 (unordered_set::extract, unordered_set::merge)
3867 (unordered_set::insert(node_type&&))
3868 (unordered_set::insert(const_iterator, node_type&&)): Define.
3869 (unordered_multiset::node_type, unordered_multiset::extract)
3870 (unordered_multiset::merge, unordered_multiset::insert(node_type&&))
3871 (unordered_multiset::insert(const_iterator, node_type&&)): Define.
3872 (_Hash_merge_helper): Specialize for unordered sets and multisets.
3873 * include/debug/map.h (map): Add using declarations or forwarding
3874 functions for new members.
3875 * include/debug/map.h (multimap): Likewise.
3876 * include/debug/map.h (multiset): Likewise.
3877 * include/debug/map.h (set): Likewise.
3878 * include/debug/unordered_map (unordered_map, unordered_multimap):
3879 Likewise.
3880 * include/debug/unordered_set( unordered_set, unordered_multiset):
3881 Likewise.
3882 * python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New
3883 helper function.
3884 (get_value_from_list_node, get_value_from_Rb_tree_node): Use helper.
3885 (StdNodeHandlePrinter): Define printer for node handles.
3886 (build_libstdcxx_dictionary): Register StdNodeHandlePrinter.
3887 * testsuite/23_containers/map/modifiers/extract.cc: New.
3888 * testsuite/23_containers/map/modifiers/merge.cc: New.
3889 * testsuite/23_containers/multimap/modifiers/extract.cc: New.
3890 * testsuite/23_containers/multimap/modifiers/merge.cc: New.
3891 * testsuite/23_containers/multiset/modifiers/extract.cc: New.
3892 * testsuite/23_containers/multiset/modifiers/merge.cc: New.
3893 * testsuite/23_containers/set/modifiers/extract.cc: New.
3894 * testsuite/23_containers/set/modifiers/merge.cc: New.
3895 * testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
3896 * testsuite/23_containers/unordered_map/modifiers/merge.cc: New.
3897 * testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
3898 New.
3899 * testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New.
3900 * testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
3901 New.
3902 * testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New.
3903 * testsuite/23_containers/unordered_set/modifiers/extract.cc: New.
3904 * testsuite/23_containers/unordered_set/modifiers/merge.cc: New.
3905 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
3906 dg-error lineno.
3907 * testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles.
3908
8a4c4f12
VV
39092016-09-22 Ville Voutilainen <ville.voutilainen@gmail.com>
3910
3911 Fix tests on old arm platforms for optional.
3912 * testsuite/20_util/optional/77288.cc: Don't use exception_ptr.
3913
64626fca
JW
39142016-09-22 Jonathan Wakely <jwakely@redhat.com>
3915
6fdc74c9
JW
3916 * python/libstdcxx/v6/printers.py (StdVariantPrinter): Adjust for
3917 recent change to _Variant_storage.
3918 * testsuite/libstdc++-prettyprinters/cxx17.cc: Test variant with
3919 reference type.
3920
64626fca
JW
3921 * include/bits/uses_allocator.h (__uses_allocator_construct): Qualify
3922 std::forward and ::new. Cast pointer to void*.
3923 * include/std/variant (_Variant_storage, _Union, _Variant_base)
3924 (__access, __visit_invoke, variant, visit): Qualify std::forward.
3925 * testsuite/20_util/variant/compile.cc: Test for ADL problems.
3926
c42bc5d7
TS
39272016-09-22 Tim Shen <timshen@google.com>
3928
64626fca 3929 * include/std/variant (variant::operator=): Fix assignment
c42bc5d7 3930 on references.
64626fca 3931 * testsuite/20_util/variant/compile.cc: Add test.
c42bc5d7 3932
41501d1a
TS
39332016-09-22 Tim Shen <timshen@google.com>
3934
3935 PR libstdc++/77641
3936 * include/std/variant (_Variant_storage::_Variant_storage):
3937 Change _Variant_storage's union to be default constructible.
3938 * testsuite/20_util/variant/compile.cc: New test.
3939
b641f833
VV
39402016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
3941
3942 PR libstdc++/77288
3943 * include/std/optional (__is_optional_impl, __is_optional): Remove.
3944 (__converts_from_optional, __assigns_from_optional): New.
3945 (optional(_Up&&)): Use is_same instead of __is_optional.
3946 (optional(const optional<_Up>&)): Constrain with
3947 __converts_from_optional.
3948 (optional(optional<_Up>&&)): Likewise.
3949 (operator=(_Up&&)): Use is_same instead of __is_optional, check
3950 is_same and is_scalar.
3951 (operator=(const optional<_Up>&)): Constrain with
3952 __converts_from_optional and __assigns_from_optional.
3953 (operator=(optional<_Up>&&)): Likewise.
3954 * testsuite/20_util/optional/77288.cc: New.
3955 * testsuite/20_util/optional/cons/value.cc: Adjust.
3956
55786785
VV
39572016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
3958
3959 Implement LWG 2729 for tuple.
3960 * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
3961 Suppress conditionally.
3962 (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
3963 (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
3964 (_Tuple_impl(const _Head&)): Constrain.
3965 (_Tuple_impl(_UHead&&)): Likewise.
3966 (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
3967 (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
3968 (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
3969 (operator=(const tuple&)): Enable conditionally.
3970 (operator=(tuple&&)): Suppress conditionally.
3971 (operator=(const tuple<_UElements...>&)): Constrain.
3972 (operator=(tuple<_UElements...>&&)): Likewise.
3973 (operator=(const tuple&)): Enable conditionally (2-param tuple).
3974 (operator=(tuple&&)): Suppress conditionally (2-param tuple).
3975 (operator=(const tuple<_U1, _U2>&)): Constrain.
3976 (operator=(tuple<_U1, _U2>&&)): Likewise.
3977 (operator=(const pair<_U1, _U2>&)): Likewise.
3978 (operator=(pair<_U1, _U2>&&)): Likewise.
3979 * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
3980 * testsuite/20_util/tuple/tuple_traits.cc: New.
3981
f524d5b3
VV
39822016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
3983
3984 PR libstdc++/77537
3985 Implement LWG 2729 for pair.
3986 * include/bits/stl_pair.h (_PCC): New.
3987 (_ConstructiblePair, _ImplicitlyConvertiblePair):
3988 Turn into static member functions of _PCC.
3989 (_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise.
3990 (_PCCP): New.
3991 (pair(const _T1&, const _T2&)): Adjust.
3992 (_PCCFP): New.
3993 (pair(const pair<_U1, _U2>&)): Adjust.
3994 (pair(_U1&&, const _T2&)): Likewise.
3995 (pair(const _T1&, _U2&&)): Likewise.
3996 (pair(_U1&&, _U2&&)): Likewise.
3997 (pair(pair<_U1, _U2>&&)): Likewise.
3998 (operator=(const pair&)): Make conditionally deleted.
3999 (operator=(pair&&)): Make conditionally suppressed.
4000 (operator=(const pair<_U1, _U2>&)): Constrain.
4001 (operator=(pair<_U1, _U2>&&): Likewise.
4002 * include/std/type_traits (__nonesuch): New.
4003 * testsuite/20_util/pair/traits.cc: New.
4004
377f30c0
VV
40052016-09-20 Ville Voutilainen <ville.voutilainen@gmail.com>
4006
4007 PR libstdc++/77619
4008 * include/bits/stl_construct.h: (_Construct_novalue): New.
4009 (_Destroy_n_aux, _Destroy_n): New.
4010 * include/bits/stl_uninitialized.h: (type_traits):
4011 New include in C++11 mode.
4012 (__uninitialized_default_novalue_1): New.
4013 (__uninitialized_default_novalue_n_1): Likewise.
4014 (__uninitialized_default_novalue): Likewise.
4015 (__uninitialized_default_novalue_n): Likewise.
4016 (__uninitialized_copy_n_pair): Likewise.
4017 (uninitialized_default_construct):
4018 Use __uninitialized_default_novalue.
4019 (uninitialized_default_construct_n):
4020 Use __uninitialized_default_novalue_n.
4021 (uninitialized_value_construct): Use __uninitialized_default.
4022 (uninitialized_value_construct_n): Use __uninitialized_default_n.
4023 (uninitialized_move): Use uninitialized_copy.
4024 (uninitialized_move_n): Use __uninitialized_copy_n_pair.
4025 (destroy_at): Use _Destroy.
4026 (destroy): Likewise.
4027 (destroy_n): Likewise.
4028 * testsuite/20_util/specialized_algorithms/
4029 memory_management_tools/1.cc: Add tests for exceptions,
4030 add tests for trivial cases for construct and move.
4031
564beb5f
JW
40322016-09-20 Jonathan Wakely <jwakely@redhat.com>
4033
4034 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
4035 (DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
4036
019270bc
JW
40372016-09-19 Jonathan Wakely <jwakely@redhat.com>
4038
d0f59435
JW
4039 PR libstdc++/77645
4040 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
4041 (DequeWorkerBase.index, VectorWorkerBase.get): Cast results of
4042 division to int to work with Python 3.
4043
ee1ab3e3
JW
4044 * testsuite/lib/gdb-test.exp (gdb-test): Fail if Python error occurs.
4045
a0a1009a
JW
4046 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): Allow
4047 display_hint to be set by subclasses.
4048 (StdVariantPrinter): Use array for display_hint. Adjust output to be
4049 more similar to std::any and std::optional output.
4050 (register_type_printers): Add type printers for basic_string_view
4051 typedefs and experimental::any. Adjust type printers for
4052 fundamentals_v1 templates to match fundamentals_v2 and later.
4053 * testsuite/libstdc++-prettyprinters/cxx17.cc: New.
4054
019270bc
JW
4055 PR libstdc++/77645
4056 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): Rename
4057 argument.
4058 (ListWorkerBase.get_value_from_node): Define new method.
4059 (ListFrontWorker.__call__, ListBackWorker.__call__): Use it.
4060
00895372
JW
40612016-09-17 Jonathan Wakely <jwakely@redhat.com>
4062
4063 * python/libstdcxx/v6/printers.py (StdVariantPrinter): Define.
4064 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
4065 Register for C++17 components in namespace std. Strip inline namespace
4066 from typename.
4067
6ee3fd97
JW
40682016-09-16 Jonathan Wakely <jwakely@redhat.com>
4069
4070 * doc/xml/manual/profile_mode.xml: Fix typo.
4071 * doc/html/manual/profile_mode_devel.html: Regenerate.
4072
84c08ec9
JW
40732016-09-16 Jonathan Wakely <jwakely@redhat.com>
4074 Marc Glisse <marc.glisse@inria.fr>
4075
4076 * libsupc++/new_opa.cc [_GLIBCXX_HAVE_ALIGNED_ALLOC]
4077 (operator new(size_t, align_val_t)): Replace modulus operator with
4078 mask.
4079
426042f5
JW
40802016-09-16 Jonathan Wakely <jwakely@redhat.com>
4081
4082 * libsupc++/new_opa.cc [_GLIBCXX_HAVE_POSIX_MEMALIGN] (aligned_alloc):
4083 Increase alignment if less than sizeof(void*).
4084 [_GLIBCXX_HAVE_ALIGNED_ALLOC] (operator new(size_t, align_val_t)):
4085 Increase size if not a multiple of alignment.
4086
0273c10e
JW
40872016-09-15 Jonathan Wakely <jwakely@redhat.com>
4088
1b75c936
JW
4089 * doc/xml/manual/debug_mode.xml: Minor editorial fixes.
4090 * doc/html/*: Regenerate.
700e2faa
JW
4091
4092 * testsuite/23_containers/vector/debug/insert6_neg.cc: Remove
4093 -Wno-deprecated.
4094 * testsuite/util/debug/checks.h (generate_unique<bool>): Specialize.
0273c10e 4095
20a1e5b8
MP
40962016-09-14 Marek Polacek <polacek@redhat.com>
4097
4098 * testsuite/23_containers/vector/debug/insert6_neg.cc: Use
4099 -Wno-deprecated.
4100
13cddbc1
CL
41012016-09-14 Christophe Lyon <christophe.lyon@linaro.org>
4102
4103 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
4104 Move dg-do directive before dg-skip.
4105 * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc:
4106 Move dg-do directive before dg-require.
4107 * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise.
4108 * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
4109 * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise.
4110 * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise.
4111 * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise.
4112 * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise.
4113 * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise.
4114 * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise.
4115 * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise.
4116 * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise.
4117 * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise.
4118 * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise.
4119 * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
4120 * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise.
4121 * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
4122 Likewise.
4123 * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
4124 * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
4125 * testsuite/27_io/objects/char/12048-5.cc: Likewise.
4126 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
4127 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
4128
8e14a10c
VV
41292016-09-13 Ville Voutilainen <ville.voutilainen@gmail.com>
4130
4131 Implement P0040R3, Extending memory management tools.
4132 * include/bits/stl_uninitialized.h (utility): New include
4133 in C++17 mode.
4134 (uninitialized_default_construct): New.
4135 (uninitialized_default_construct_n): Likewise.
4136 (uninitialized_value_construct): Likewise.
4137 (uninitialized_value_construct_n): Likewise.
4138 (uninitialized_move): Likewise.
4139 (uninitialized_move_n): Likewise.
4140 (destroy_at, destroy, destroy_n): Likewise.
7a461e27
JW
4141 * testsuite/20_util/specialized_algorithms/memory_management_tools/
4142 1.cc: New.
8e14a10c 4143
a313485b
JM
41442016-09-12 Jason Merrill <jason@redhat.com>
4145
4146 * config/abi/pre/gnu.ver: Use [jmy] for size_t.
4147
5e8037ba
VV
41482016-09-12 Ville Voutilainen <ville.voutilainen@gmail.com>
4149
4150 Implement P0253R1, Fixing a design mistake in the searchers
4151 interface in Library Fundamentals.
4152 * include/std/functional: (utility): New include in C++17 mode.
4153 (default_searcher): Use a pair as return type, adjust the definition.
4154 (boyer_moore_searcher): Likewise.
4155 (boyer_moore_horspool_searcher): Likewise.
4156 * testsuite/20_util/function_objects/searchers.cc: Adjust.
4157
f82dfb8d
VV
41582016-09-12 Ville Voutilainen <ville.voutilainen@gmail.com>
4159
4160 Implement C++17 string searchers.
4161 * include/std/functional: (unordered_map, vector): New includes
4162 in C++17 mode.
4163 (array, bits/stl_algo.h): Likewise.
4164 (default_searcher, __boyer_moore_map_base): New.
4165 (__boyer_moore_array_base, __is_std_equal_to): Likewise.
4166 (__boyer_moore_base_t, boyer_moore_searcher): Likewise.
4167 (boyer_moore_horspool_searcher, make_default_searcher): Likewise.
4168 (make_boyer_moore_searcher): Likewise.
4169 (make_boyer_moore_horspool_searcher): Likewise.
4170 * testsuite/20_util/function_objects/searchers.cc: New.
4171
684211e1
MW
41722016-09-12 Matthew Wahab <matthew.wahab@arm.com>
4173
4174 * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
4175 Move dg-do directive before dg-require.
4176 * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise.
4177 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
4178 Likewise.
4179 * testsuite/22_locale/codecvt/utf8.cc: Likewise.
4180 * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
4181 * testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise.
4182 * testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise.
4183 * testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise.
4184 * testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise.
4185 * testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise.
4186 * testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise.
4187 * testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise.
4188 * testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise.
4189 * testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise.
4190 * testsuite/23_containers/deque/debug/insert5_neg.cc: Likewise.
4191 * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
4192 Likewise.
7a461e27
JW
4193 * testsuite/23_containers/deque/debug/self_move_assign_neg.cc:
4194 Likewise.
684211e1
MW
4195 * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
4196 * testsuite/23_containers/forward_list/debug/60499.cc: Likewise.
7a461e27
JW
4197 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
4198 Likewise.
4199 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
4200 Likewise.
4201 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
4202 Likewise.
4203 * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
4204 Likewise.
4205 * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
4206 Likewise.
4207 * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
4208 Likewise.
4209 * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
4210 Likewise.
4211 * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
4212 Likewise.
4213 * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
4214 Likewise.
4215 * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
4216 Likewise.
4217 * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
4218 Likewise.
4219 * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
4220 Likewise.
4221 * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
684211e1 4222 Likewise.
7a461e27
JW
4223 * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
4224 Likewise.
4225 * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
4226 Likewise.
4227 * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
4228 Likewise.
4229 * testsuite/23_containers/forward_list/debug/
4230 iterator_self_move_assign_neg.cc: Likewise.
684211e1
MW
4231 * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
4232 Likewise.
7a461e27
JW
4233 * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
4234 Likewise.
4235 * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
4236 Likewise.
4237 * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
4238 Likewise.
4239 * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
4240 Likewise.
4241 * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
4242 Likewise.
4243 * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
4244 Likewise.
4245 * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
4246 Likewise.
684211e1
MW
4247 * testsuite/23_containers/list/debug/assign1_neg.cc: Likewise.
4248 * testsuite/23_containers/list/debug/assign2_neg.cc: Likewise.
4249 * testsuite/23_containers/list/debug/assign3_neg.cc: Likewise.
4250 * testsuite/23_containers/list/debug/construct1_neg.cc: Likewise.
4251 * testsuite/23_containers/list/debug/construct2_neg.cc: Likewise.
4252 * testsuite/23_containers/list/debug/construct3_neg.cc: Likewise.
4253 * testsuite/23_containers/list/debug/insert1_neg.cc: Likewise.
4254 * testsuite/23_containers/list/debug/insert2_neg.cc: Likewise.
4255 * testsuite/23_containers/list/debug/insert3_neg.cc: Likewise.
4256 * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
4257 * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
4258 Likewise.
4259 * testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise.
4260 * testsuite/23_containers/map/debug/60499.cc: Likewise.
4261 * testsuite/23_containers/map/debug/construct1_neg.cc: Likewise.
4262 * testsuite/23_containers/map/debug/construct2_neg.cc: Likewise.
4263 * testsuite/23_containers/map/debug/construct3_neg.cc: Likewise.
4264 * testsuite/23_containers/map/debug/insert1_neg.cc: Likewise.
4265 * testsuite/23_containers/map/debug/insert2_neg.cc: Likewise.
4266 * testsuite/23_containers/map/debug/insert3_neg.cc: Likewise.
4267 * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
4268 Likewise.
4269 * testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise.
4270 * testsuite/23_containers/multimap/debug/60499.cc: Likewise.
4271 * testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise.
4272 * testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise.
4273 * testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise.
4274 * testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise.
4275 * testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise.
4276 * testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise.
7a461e27
JW
4277 * testsuite/23_containers/multimap/debug/
4278 iterator_self_move_assign_neg.cc: Likewise.
4279 * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
684211e1 4280 Likewise.
684211e1
MW
4281 * testsuite/23_containers/multiset/debug/60499.cc: Likewise.
4282 * testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise.
4283 * testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise.
4284 * testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise.
4285 * testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise.
4286 * testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise.
4287 * testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise.
7a461e27
JW
4288 * testsuite/23_containers/multiset/debug/
4289 iterator_self_move_assign_neg.cc: Likewise.
4290 * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
684211e1 4291 Likewise.
684211e1
MW
4292 * testsuite/23_containers/set/debug/60499.cc: Likewise.
4293 * testsuite/23_containers/set/debug/construct1_neg.cc: Likewise.
4294 * testsuite/23_containers/set/debug/construct2_neg.cc: Likewise.
4295 * testsuite/23_containers/set/debug/construct3_neg.cc: Likewise.
4296 * testsuite/23_containers/set/debug/insert1_neg.cc: Likewise.
4297 * testsuite/23_containers/set/debug/insert2_neg.cc: Likewise.
4298 * testsuite/23_containers/set/debug/insert3_neg.cc: Likewise.
4299 * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
4300 Likewise.
4301 * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
4302 * testsuite/23_containers/unordered_map/debug/60499.cc: Likewise.
4303 * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: Likewise.
4304 * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: Likewise.
7a461e27
JW
4305 * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
4306 Likewise.
684211e1
MW
4307 * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: Likewise.
4308 * testsuite/23_containers/unordered_map/debug/cend_neg.cc: Likewise.
7a461e27
JW
4309 * testsuite/23_containers/unordered_map/debug/construct1_neg.cc:
4310 Likewise.
4311 * testsuite/23_containers/unordered_map/debug/construct2_neg.cc:
4312 Likewise.
4313 * testsuite/23_containers/unordered_map/debug/construct3_neg.cc:
4314 Likewise.
684211e1
MW
4315 * testsuite/23_containers/unordered_map/debug/end1_neg.cc: Likewise.
4316 * testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise.
4317 * testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise.
4318 * testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
4319 * testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
7a461e27
JW
4320 * testsuite/23_containers/unordered_map/debug/
4321 invalid_local_iterator_compare_neg.cc: Likewise.
4322 * testsuite/23_containers/unordered_map/debug/
4323 invalid_local_iterator_range_neg.cc: Likewise.
4324 * testsuite/23_containers/unordered_map/debug/
4325 iterator_self_move_assign_neg.cc: Likewise.
684211e1
MW
4326 * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
4327 Likewise.
4328 * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
4329 Likewise.
7a461e27
JW
4330 * testsuite/23_containers/unordered_map/debug/
4331 use_erased_local_iterator_neg.cc: Likewise.
4332 * testsuite/23_containers/unordered_map/debug/
4333 use_invalid_iterator_neg.cc: Likewise.
4334 * testsuite/23_containers/unordered_map/debug/
4335 use_invalid_local_iterator_neg.cc: Likewise.
4336 * testsuite/23_containers/unordered_multimap/debug/60499.cc: Likewise.
4337 * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc:
684211e1 4338 Likewise.
7a461e27 4339 * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc:
684211e1 4340 Likewise.
684211e1
MW
4341 * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
4342 Likewise.
7a461e27
JW
4343 * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc:
4344 Likewise.
4345 * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc:
4346 Likewise.
684211e1
MW
4347 * testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc:
4348 Likewise.
4349 * testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc:
4350 Likewise.
4351 * testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc:
4352 Likewise.
7a461e27 4353 * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc:
684211e1 4354 Likewise.
7a461e27 4355 * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc:
684211e1 4356 Likewise.
7a461e27 4357 * testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc:
684211e1 4358 Likewise.
7a461e27 4359 * testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc:
684211e1 4360 Likewise.
7a461e27 4361 * testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc:
684211e1 4362 Likewise.
7a461e27
JW
4363 * testsuite/23_containers/unordered_multimap/debug/
4364 invalid_local_iterator_compare_neg.cc: Likewise.
4365 * testsuite/23_containers/unordered_multimap/debug/
4366 invalid_local_iterator_range_neg.cc: Likewise.
4367 * testsuite/23_containers/unordered_multimap/debug/
4368 iterator_self_move_assign_neg.cc: Likewise.
4369 * testsuite/23_containers/unordered_multimap/debug/
4370 max_load_factor_neg.cc: Likewise.
4371 * testsuite/23_containers/unordered_multimap/debug/
4372 self_move_assign_neg.cc: Likewise.
4373 * testsuite/23_containers/unordered_multimap/debug/
4374 use_erased_local_iterator_neg.cc: Likewise.
4375 * testsuite/23_containers/unordered_multimap/debug/
4376 use_invalid_iterator_neg.cc: Likewise.
4377 * testsuite/23_containers/unordered_multimap/debug/
4378 use_invalid_local_iterator_neg.cc: Likewise.
684211e1
MW
4379 * testsuite/23_containers/unordered_multiset/debug/60499.cc:
4380 Likewise.
4381 * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc:
4382 Likewise.
4383 * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc:
4384 Likewise.
4385 * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
4386 Likewise.
4387 * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc:
4388 Likewise.
4389 * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc:
4390 Likewise.
4391 * testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc:
4392 Likewise.
4393 * testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc:
4394 Likewise.
4395 * testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc:
4396 Likewise.
7a461e27 4397 * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc:
684211e1 4398 Likewise.
7a461e27 4399 * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc:
684211e1 4400 Likewise.
7a461e27 4401 * testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc:
684211e1 4402 Likewise.
7a461e27 4403 * testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc:
684211e1 4404 Likewise.
7a461e27 4405 * testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc:
684211e1 4406 Likewise.
7a461e27
JW
4407 * testsuite/23_containers/unordered_multiset/debug/
4408 invalid_local_iterator_compare_neg.cc: Likewise.
4409 * testsuite/23_containers/unordered_multiset/debug/
4410 invalid_local_iterator_range_neg.cc: Likewise.
4411 * testsuite/23_containers/unordered_multiset/debug/
4412 iterator_self_move_assign_neg.cc: Likewise.
4413 * testsuite/23_containers/unordered_multiset/debug/
4414 max_load_factor_neg.cc: Likewise.
4415 * testsuite/23_containers/unordered_multiset/debug/
4416 self_move_assign_neg.cc: Likewise.
4417 * testsuite/23_containers/unordered_multiset/debug/
4418 use_erased_local_iterator_neg.cc: Likewise.
4419 * testsuite/23_containers/unordered_multiset/debug/
4420 use_invalid_iterator_neg.cc: Likewise.
4421 * testsuite/23_containers/unordered_multiset/debug/
4422 use_invalid_local_iterator_neg.cc: Likewise.
684211e1
MW
4423 * testsuite/23_containers/unordered_set/debug/60499.cc: Likewise.
4424 * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: Likewise.
4425 * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: Likewise.
7a461e27
JW
4426 * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
4427 Likewise.
684211e1
MW
4428 * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: Likewise.
4429 * testsuite/23_containers/unordered_set/debug/cend_neg.cc: Likewise.
7a461e27
JW
4430 * testsuite/23_containers/unordered_set/debug/construct1_neg.cc:
4431 Likewise.
4432 * testsuite/23_containers/unordered_set/debug/construct2_neg.cc:
4433 Likewise.
4434 * testsuite/23_containers/unordered_set/debug/construct3_neg.cc:
4435 Likewise.
684211e1
MW
4436 * testsuite/23_containers/unordered_set/debug/end1_neg.cc: Likewise.
4437 * testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise.
4438 * testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
4439 * testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
4440 * testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
7a461e27
JW
4441 * testsuite/23_containers/unordered_set/debug/
4442 invalid_local_iterator_compare_neg.cc: Likewise.
4443 * testsuite/23_containers/unordered_set/debug/
4444 invalid_local_iterator_range_neg.cc: Likewise.
4445 * testsuite/23_containers/unordered_set/debug/
4446 iterator_self_move_assign_neg.cc: Likewise.
4447 * testsuite/23_containers/unordered_set/debug/
4448 max_load_factor_neg.cc: Likewise.
4449 * testsuite/23_containers/unordered_set/debug/
4450 self_move_assign_neg.cc: Likewise.
4451 * testsuite/23_containers/unordered_set/debug/
4452 use_erased_local_iterator_neg.cc: Likewise.
4453 * testsuite/23_containers/unordered_set/debug/
4454 use_invalid_iterator_neg.cc: Likewise.
4455 * testsuite/23_containers/unordered_set/debug/
4456 use_invalid_local_iterator_neg.cc: Likewise.
684211e1
MW
4457 * testsuite/23_containers/vector/debug/52433.cc: Likewise.
4458 * testsuite/23_containers/vector/debug/60499.cc: Likewise.
4459 * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise.
7a461e27
JW
4460 * testsuite/23_containers/vector/debug/
4461 iterator_self_move_assign_neg.cc: Likewise.
4462 * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
684211e1 4463 Likewise.
684211e1
MW
4464 * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
4465 * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
4466 * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
4467 * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
4468 * testsuite/29_atomics/atomic/60658.cc: Likewise.
4469 * testsuite/29_atomics/atomic/60695.cc: Likewise.
4470 * testsuite/29_atomics/atomic/62259.cc: Likewise.
4471 * testsuite/29_atomics/atomic/64658.cc: Likewise.
4472 * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
4473 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
7a461e27
JW
4474 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
4475 Likewise.
684211e1 4476
25011292
JW
44772016-09-11 Jonathan Wakely <jwakely@redhat.com>
4478
4479 * libsupc++/new_opant.cc: Include exception_defines.h.
4480 * libsupc++/new_opvant.cc: Likewise.
4481
af63ba4b
JM
44822016-09-09 Jason Merrill <jason@redhat.com>
4483
4484 Implement P0035R4, C++17 new of over-aligned types.
4485 * libsupc++/new: Declare aligned new/delete operators.
4486 * config/abi/pre/gnu.ver: Export them.
4487 * configure.ac: Check for aligned_alloc, posix_memalign, memalign,
4488 _aligned_malloc.
4489 * libsupc++/new_opa.cc: New.
4490 * libsupc++/new_opant.cc: New.
4491 * libsupc++/new_opva.cc: New.
4492 * libsupc++/new_opva.cc: New.
4493 * libsupc++/del_opa.cc: New.
4494 * libsupc++/del_opant.cc: New.
4495 * libsupc++/del_opsa.cc: New.
4496 * libsupc++/del_opva.cc: New.
4497 * libsupc++/del_opvant.cc: New.
4498 * libsupc++/del_opvsa.cc: New.
4499 * libsupc++/Makefile.am: Build them.
4500
f75d5999
TS
45012016-09-05 Tim Shen <timshen@google.com>
4502
4503 * include/std/variant: include bits/move.h for std::addressof.
4504
eddca7bd
MS
45052016-09-05 Mikhail Strelnikov <mikhail.strelnikov@gmail.com>
4506
7a461e27
JW
4507 * include/std/variant (_Variant_storage::_M_storage()): Use
4508 std::addressof instead of operator& to take address.
eddca7bd 4509
5a810362
MK
45102016-09-02 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
4511
4512 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Check for presence of
4513 setrlimit on both native and cross targets.
4514 * configure: Regenerate.
4515
3625264f
JW
45162016-08-31 Jonathan Wakely <jwakely@redhat.com>
4517
7663cae2
JW
4518 * include/bits/shared_ptr.h (_Assignable): New alias template.
4519 (shared_ptr::operator=(const shared_ptr<_Tp1>&))
4520 (shared_ptr::operator=(shared_ptr<_Tp1>&&))
4521 (shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
4522 _Assignable.
4523 * include/bits/shared_ptr_base.h (_Assignable): New alias template.
4524 (__shared_ptr::operator=(const __shared_ptr<_Tp1>&))
4525 (__shared_ptr::operator=(__shared_ptr<_Tp1>&&))
4526 (__shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
4527 _Assignable.
4528 (__shared_ptr::reset(_Tp1*), __shared_ptr::reset(_Tp1*, _Deleter))
4529 (__shared_ptr::reset(_Tp1*, _Deleter, _Alloc)): Constrain with
4530 _Convertible.
4531 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Change dg-error to
4532 match on any line.
4533 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
4534 * testsuite/20_util/shared_ptr/assign/sfinae.cc: New test.
4535 * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Update
4536 expected errors. Remove unnecessary code.
4537 * testsuite/20_util/shared_ptr/modifiers/reset_sfinae.cc: New test.
4538
e46d22a8
JW
4539 * include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Move
4540 comparison object.
4541 * testsuite/23_containers/set/move_comparison.cc: New test.
4542
3625264f
JW
4543 * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
4544 New test.
4545
7875b41f
VV
45462016-08-30 Ville Voutilainen <ville.voutilainen@gmail.com>
4547
4548 PR libstdc++/77395
4549 * include/std/type_traits (is_constructible): Forward-declare...
4550 (__is_base_to_derived_ref): ...and use here.
4551 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
4552 * testsuite/20_util/is_constructible/77395.cc: New.
4553 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
4554 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4555 Likewise.
4556 * testsuite/20_util/tuple/77395.cc: New.
4557
e1becf59
UB
45582016-08-30 Uros Bizjak <ubizjak@gmail.com>
4559
4560 * testsuite/22_locale/time_get/get/char/2.cc: Move dg-do run
4561 directive above dg-require-namedlocale directive.
4562 * testsuite/22_locale/time_get/get/wchar_t/2.cc: Ditto.
4563 * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Ditto.
4564 * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Ditto.
4565 * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Ditto.
4566 * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Ditto.
4567
4aebb4e4
TS
45682016-08-27 Tim Shen <timshen@google.com>
4569
4570 PR libstdc++/77356
4571 * include/bits/regex_compiler.tcc(_M_insert_bracket_matcher,
4572 _M_expression_term): Modify to support dash literal.
4573 * include/bits/regex_scanner.h: Add dash as a token type to make
4574 a different from the mandated dash literal by escaping.
4575 * include/bits/regex_scanner.tcc(_M_scan_in_bracket): Emit dash
4576 token in bracket expression parsing.
4577 * testsuite/28_regex/regression.cc: Add new testcases.
4578
52066eae
JW
45792016-08-26 Jonathan Wakely <jwakely@redhat.com>
4580
10491e4c
JW
4581 PR libstdc++/51960
4582 * doc/xml/manual/intro.xml: Document DR 2127 change.
4583 * doc/html/*: Regenerate.
4584 * include/bits/stl_raw_storage_iter.h (operator=(_Tp&&)): Add.
4585 (operator++(), operator++(int)): Use injected class name.
4586 * testsuite/20_util/raw_storage_iterator/dr2127.cc: New test.
4587
52066eae
JW
4588 * testsuite/*: Use { target c++11 } or { target c++14 } instead of
4589 using -std in dg-options.
4590
e8223484
JW
45912016-08-26 Jonathan Wakely <jwakely@redhat.com>
4592 Pedro Alves <palves@redhat.com>
4593
4594 * testsuite/lib/gdb-test.exp (gdb-dg-runtest): Define wrapper to save
4595 and restore dg-interpreter-batch-mode.
4596 * testsuite/libstdc++-prettyprinters/prettyprinters.exp: Use
4597 gdb-dg-runtest instead of dg-runtest.
4598 * testsuite/libstdc++-xmethods/xmethods.exp: Likewise.
4599
86bbf15b
JW
46002016-08-26 Jonathan Wakely <jwakely@redhat.com>
4601
4602 * config/abi/pre/gnu.ver (GLIBCXX_3.4, GLIBCXX_3.4.21): Use more
4603 precise patterns for basic_string constructors.
4604 (GLIBCXX_3.4.23): Export new constructors.
4605 * doc/xml/manual/intro.xml: Document LWG 2583 status.
4606 * doc/html/*: Regenerate.
4607 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
4608 (basic_string(const basic_string&, size_type, const Alloc&)): Add
4609 new constructor for LWG 2583.
4610 (basic_string(const basic_string&, size_type, size_type)): Remove
4611 default argument.
4612 [!_GLIBCXX_USE_CXX11_ABI]: Likewise.
4613 * include/bits/basic_string.tcc [!_GLIBCXX_USE_CXX11_ABI]: Define it.
4614 * testsuite/21_strings/basic_string/cons/char/8.cc: New test.
4615 * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: New test.
4616
9a38acdf
AK
46172016-08-24 Aditya Kumar <hiraditya@msn.com>
4618
4619 * include/bits/algorithmfwd.h: Remove trailing whitespace.
4620 * include/bits/shared_ptr_base.h: Likewise.
4621
06db9920
JW
46222016-08-23 Jonathan Wakely <jwakely@redhat.com>
4623
e90a8010
JW
4624 * include/debug/array (array): Add _GLIBCXX17_CONSTEXPR.
4625 * include/profile/array (array): Likewise.
4626 (array::swap): Fix exception specification for zero-sized arrays.
4627
5ea387db
JW
4628 PR libstdc++/77334
4629 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
4630 (_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
4631 * testsuite/23_containers/map/77334.cc: New test.
4632
5d1c6b3e
JW
4633 * doc/xml/manual/using.xml: Remove reference to -pthreads option.
4634 * doc/html/*: Regenerate.
4635
457c4a3f
JW
4636 * testsuite/experimental/feat-cxx14.cc: Only preprocess, not compile.
4637 * testsuite/experimental/feat-lib-fund.cc: Likewise.
4638
b405d54f
JW
4639 PR libstdc++/71771
4640 * include/bits/stl_iterator.h
4641 (operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Only
4642 define for C++98 mode.
4643 (operator-(move_iterator<Iter>, move_iterator<Iter>): Don't define.
4644 * testsuite/24_iterators/headers/iterator/synopsis.cc: Use
4645 -std=gnu++98.
4646 * testsuite/24_iterators/headers/iterator/synopsis_c++11.cc: New test.
4647 * testsuite/24_iterators/headers/iterator/synopsis_c++14.cc: New test.
4648 * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: New test.
4649 * testsuite/24_iterators/move_iterator/greedy_ops.cc: Don't test
4650 difference operator.
4651 * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Only test
4652 difference operator for C++98.
4653 * testsuite/24_iterators/reverse_iterator/71771.cc: New test.
4654
06db9920
JW
4655 * include/bits/c++config (_GLIBCXX17_CONSTEXPR): Define.
4656 * include/bits/range_access.h (begin, end, rbegin, rend, crbegin)
4657 (crend): Add _GLIBCXX17_CONSTEXPR as per P0031R0.
4658 * include/bits/stl_iterator.h (reverse_iterator, move_iterator)
4659 (__make_reverse_iterator, make_reverse_iterator, make_move_iterator):
4660 Likewise.
4661 * include/bits/stl_iterator_base_funcs.h (__distance, __advance): Add
4662 _GLIBCXX14_CONSTEXPR.
4663 (distance, advance, next, prev): Add _GLIBCXX17_CONSTEXPR.
4664 * include/std/array (array::begin, array::end, array::rbegin)
4665 (array::rend, array::cbegin, array:cend, array::crbegin)
4666 (array::crend, array::operator[], array::at, array::front)
4667 (array::back, array::data): Likewise.
4668 * testsuite/24_iterators/headers/iterator/range_access.cc: Replace
4669 with separate tests for C++11, C++14, and C++17.
4670 * testsuite/24_iterators/headers/iterator/range_access_c++11.cc: New.
4671 * testsuite/24_iterators/headers/iterator/range_access_c++14.cc: New.
4672 * testsuite/24_iterators/headers/iterator/range_access_c++17.cc: New.
4673
d79d6252
TS
46742016-08-22 Tim Shen <timshen@google.com>
4675
4676 Split _M_dfs() into smaller functions.
4677 * regex_executor.h(_M_handle_repeat, _M_handle_subexpr_begin)
4678 (_M_handle_subexpr_end, _M_handle_line_begin_assertion)
4679 (_M_handle_line_end_assertion, _M_handle_word_boundary)
4680 (_M_handle_subexpr_lookahead, _M_handle_match)
4681 (_M_handle_backref, _M_handle_accept, _M_handle_alternative):
4682 Add separate function declarations.
4683 * regex_executor.tcc: Split _M_dfs() into multiple handler functions.
4684
27abac26
GN
46852016-08-22 Gleb Natapov <gleb@scylladb.com>
4686
4687 PR libstdc++/68297
4688 * config/abi/pre/gnu-versioned-namespace.ver: Export
4689 __cxa_init_primary_exception and std::exception_ptr(void*).
4690 * config/abi/pre/gnu.ver (CXXABI_1.3.11) : Add new symbol version and
4691 export __cxa_init_primary_exception and std::exception_ptr(void*).
4692 * include/Makefile.am: Add new headers.
4693 * include/Makefile.in: Regenerate.
4694 * libsupc++/Makefile.am: Add new headers.
4695 * libsupc++/Makefile.in: Regenerate.
4696 * libsupc++/cxxabi.h (__cxa_allocate_exception): Move to ...
4697 * libsupc++/cxxabi_init_exception.h: New header.
4698 (__cxa_init_primary_exception): Declare.
4699 * libsupc++/eh_throw.cc (__cxa_init_primary_exception): Define.
4700 (__cxa_throw): Use __cxa_init_primary_exception.
4701 * libsupc++/exception (std::exception): Move to ...
4702 * libsupc++/exception.h: New header.
4703 * libsupc++/exception_ptr.h (__exception_ptr::exception_ptr): Add
4704 friend declaration.
4705 (__exception_ptr::__dest_thunk): New function template.
4706 (std::make_exception_ptr) [__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]:
4707 Use __cxa_allocate_exception and __cxa_init_primary_exception to
4708 create exception_ptr.
4709 * libsupc++/typeinfo: Include bits/exception.h instead of exception.
4710 * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.11 version.
4711
94f54d47
JW
47122016-08-22 Jonathan Wakely <jwakely@redhat.com>
4713
4c86ffcc
JW
4714 * doc/xml/api.xml: Replace hardcoded links for specific versions with
4715 link to docs for all releases.
4716 * doc/html/*: Regenerate.
4717
94f54d47
JW
4718 PR libstdc++/77322
4719 * doc/xml/manual/intro.xml: Document DR 2062 change.
4720 * include/std/functional (function::swap): Add noexcept.
4721 (swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise.
4722 * testsuite/20_util/function/77322.cc: New test.
4723
1f4ed04e
JW
47242016-08-19 Jonathan Wakely <jwakely@redhat.com>
4725
71c54f8e
JW
4726 * testsuite/21_strings/basic_string/pthread18185.cc: Use -pthread for
4727 *-*-solaris* instead of -pthreads.
4728 * testsuite/21_strings/basic_string/pthread4.cc : Likewise.
4729 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
4730 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
4731 * testsuite/23_containers/list/pthread1.cc: Likewise.
4732 * testsuite/23_containers/list/pthread5.cc: Likewise.
4733 * testsuite/23_containers/map/pthread6.cc: Likewise.
4734 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
4735 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
4736 * testsuite/30_threads/shared_mutex/*: Likewise.
4737 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
4738 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
4739 default_weaktoshared.cc: Likewise.
4740 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
4741 mutex_weaktoshared.cc: Likewise.
4742 * testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. Use
4743 dg-require-effective-target instead of using -std option.
4744 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
4745 Likewise.
4746 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
4747 * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
4748 Likewise.
4749 * testsuite/30_threads/async/*: Likewise.
4750 * testsuite/30_threads/call_once/*: Likewise.
4751 * testsuite/30_threads/condition_variable/*: Likewise.
4752 * testsuite/30_threads/condition_variable_any/*: Likewise.
4753 * testsuite/30_threads/future/*: Likewise.
4754 * testsuite/30_threads/lock/*: Likewise.
4755 * testsuite/30_threads/mutex/*: Likewise.
4756 * testsuite/30_threads/packaged_task/*: Likewise.
4757 * testsuite/30_threads/promise/*: Likewise.
4758 * testsuite/30_threads/recursive_mutex/*: Likewise.
4759 * testsuite/30_threads/recursive_timed_mutex/*: Likewise.
4760 * testsuite/30_threads/shared_future/*: Likewise.
4761 * testsuite/30_threads/shared_lock/*: Likewise.
4762 * testsuite/30_threads/shared_timed_mutex/*: Likewise.
4763 * testsuite/30_threads/this_thread/*: Likewise.
4764 * testsuite/30_threads/thread/*: Likewise.
4765 * testsuite/30_threads/timed_mutex/*: Likewise.
4766 * testsuite/30_threads/try_lock/*: Likewise.
4767 * testsuite/30_threads/unique_lock/*: Likewise.
4768
e6ee5bfd
JW
4769 * doc/xml/manual/status_cxx2017.xml: Update status of not_fn.
4770 * doc/html/*: Regenerate.
4771 * include/experimental/functional (_Not_fn, not_fn): Match C++17
4772 semantics.
4773 * include/std/functional (_Not_fn, not_fn): Define for C++17.
4774 * testsuite/20_util/not_fn/1.cc: New.
4775 * testsuite/experimental/functional/not_fn.cc: Test abstract class.
4776 Remove test for volatile-qualified wrapper.
4777
387edf83
JW
4778 * include/std/atomic (atomic::is_always_lock_free): Define.
4779 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno.
4780 * testsuite/29_atomics/atomic/is_always_lock_free.cc: New.
4781 * testsuite/29_atomics/atomic_integral/is_always_lock_free.cc: New.
4782 * doc/xml/manual/status_cxx2017.xml: Update status.
4783 * doc/html/*: Regenerate.
4784
285ee2fb
JW
4785 * include/experimental/tuple (apply): Qualify call to __apply_impl.
4786 * include/std/tuple (apply): Likewise.
4787 * testsuite/experimental/system_error/value.cc: Fix ambiguities in
4788 C++17 mode.
4789 * testsuite/experimental/tuple/tuple_size.cc: Likewise.
4790 * testsuite/experimental/type_traits/value.cc: Likewise.
4791
1f4ed04e
JW
4792 * doc/xml/manual/status_cxx2017.xml: Update status of make_from_tuple
4793 and variant.
4794 * doc/html/*: Regenerate.
4795
a577f786
VV
47962016-08-18 Ville Voutilainen <ville.voutilainen@gmail.com>
4797
4798 Implement the latest proposed resolution of LWG 2756.
4799 * include/std/optional (Optional_base(const _Tp&))
4800 (Optional_base(_Tp&&), using _Base::_Base): Remove.
4801 (optional(nullopt_t)): New.
4802 (optional(_Up&&)): Invoke base directly with in_place
4803 rather than creating a temporary, add default template
4804 argument, change constraints.
4805 (optional(const optional<_Up>&)): Invoke base directly
4806 with in_place, remove unnecessary constraints.
4807 (optional(optional<_Up>&& __t)): Likewise.
4808 (optional(in_place_t, _Args&&...)): New.
4809 (optional(in_place_t, initializer_list<_Up>, _Args&&...)): Likewise.
4810 (operator=(_Up&&)): Add default template argument, change constraints.
4811 (operator=(const optional<_Up>&)): Put is_same first in the
4812 constraints.
4813 (operator=(optional<_Up>&&)): Likewise.
4814 * testsuite/20_util/optional/assignment/5.cc: Add a test to
4815 verify assignment from something that can't be perfect-forwarded.
4816 * testsuite/20_util/optional/cons/value.cc: Add tests to verify
4817 that a nested optional is disengaged when constructed
4818 from a disengaged element type, and to verify that assignments
4819 from an engaged element type engage the optional.
4820
197c757c
TS
48212016-08-18 Tim Shen <timshen@google.com>
4822
4823 Implement <variant>
4824
4825 * include/Makefile.am: Add new file std/variant.
4826 * include/Makefile.in: Generated from Makefile.am.
4827 * include/bits/enable_special_members.h: Add a tag type to allow
4828 the construction in non-default constructor.
4829 * include/bits/uses_allocator.h: Add convenience traits to
4830 detect constructibility.
4831 * include/std/variant: Implement <variant>.
4832 * testsuite/20_util/variant/compile.cc: Compile-time tests.
4833 * testsuite/20_util/variant/run.cc: Runtime tests.
4834
6cb98491
JW
48352016-08-18 Jonathan Wakely <jwakely@redhat.com>
4836
0b224dcf
JW
4837 * doc/xml/manual/test.xml (test.run.permutations): Expand section.
4838 (test.new_tests): Rewrite section.
4839 (tests.dg.directives): New section.
4840 * doc/html/*: Regenerate.
4841
b56d48ef
JW
4842 * doc/xml/manual/test.xml: Improve documentation of test targets.
4843 Document new-abi-baseline, check-debug, and check-parallel targets.
4844
409d5555
JW
4845 * doc/xml/manual/build_hacking.xml: New section on shared library
4846 versioning.
4847
a8107a98
JW
4848 * doc/xml/manual/build_hacking.xml: Improve markup.
4849 * doc/xml/manual/test.xml: Likewise. Change section title from "Test"
4850 to "Testing".
4851 * doc/xml/faq.xml: Change link text to "Testing".
4852
6cb98491
JW
4853 * testsuite/tr1/3_function_objects/function/10.cc: Remove unintended
4854 dg-options directive.
4855
657213f7
JW
48562016-08-17 Jonathan Wakely <jwakely@redhat.com>
4857
6fbf26cc
JW
4858 * testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do
4859 directive and use effective target instead of dg-options.
4860
18a20f3f
JW
4861 * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Use effective target
4862 instead of -std in dg-options.
4863 * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
4864 * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
4865 * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
4866 * testsuite/20_util/hash/quality.cc: Likewise.
4867 * testsuite/25_algorithms/heap/moveable.cc: Likewise.
4868 * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
4869 * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
4870 * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
4871 * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
4872 * testsuite/25_algorithms/sort/random_test.cc: Likewise.
4873
f7717203
JW
4874 * testsuite/20_util/tuple/67844.cc: Require c++11 effective target.
4875 * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Likewise.
4876 * testsuite/27_io/rvalue_streams.cc: Likewise.
4877
e30c6e0c
JW
4878 * testsuite/26_numerics/complex/literals/types.cc: Add comment.
4879
e07f4b00
JW
4880 * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
4881 Remove duplicate dg-options directive.
4882
37144e84
JW
4883 * testsuite/ext/profile/all.cc: Use effective target instead of
4884 -std=gnu++11. Use dg-additional-options instead of repeating options.
4885
8fe79e73
JW
4886 * testsuite/20_util/bind/ref_neg.cc: Use effective target instead of
4887 -std=gnu++11. Add -fno-show-columns to dg-options. Use dg-prune-output
4888 instead of dg-excess-errors.
4889
c4296692
JW
4890 * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Disable
4891 test for C++17.
4892 * testsuite/experimental/chrono/value.cc: Avoid ambiguities in C++17.
4893 * testsuite/experimental/ratio/value.cc: Likewise.
4894 * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Disable test for
4895 C++17.
4896 * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
4897 * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
4898 * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
4899 * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
4900 * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
4901 * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
4902 * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
4903 * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
4904 * testsuite/tr1/5_numerical_facilities/special_functions/
4905 10_cyl_bessel_k/airy.cc: Adjust namespace of __detail::__airy for
4906 C++17 compatibility.
4907
ba364478
JW
4908 * testsuite/24_iterators/headers/iterator/range_access.cc: Adjust
4909 expected signatures for C++14 compatibility.
4910
657213f7
JW
4911 PR libstdc++/77264
4912 * include/bits/basic_string.h (operator=(__sv_type)
4913 (append(__sv_type), assign(__sv_type), insert(size_type, __sv_type))
4914 (replace(size_type, size_type, __sv_type))
4915 (replace(const_iterator, const_iterator, __sv_type))
4916 (find(__sv_type, size_type), rfind(__sv_type, size_type))
4917 (compare(size_type, size_type, __sv_type)): Reformat.
4918 (_If_sv): Define helper for SFINAE constaints.
4919 (append(const _Tp&, size_type, size_type))
4920 (assign(const _Tp&, size_type, size_type))
4921 (insert(size_type, const _Tp&, size_type, size_type))
4922 (replace(size_type, size_type, const _Tp&, size_type, size_type)):
4923 Use _If_sv.
4924 * testsuite/21_strings/basic_string/modifiers/append/char/4.cc: Test
4925 SFINAE constraints.
4926 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
4927 Likewise.
4928 * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
4929 Likewise.
4930 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
4931 Likewise.
4932 * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
4933 Likewise.
4934 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
4935 Likewise.
4936 * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
4937 Likewise.
4938 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
4939 Likewise.
4940 * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
4941 Likewise.
4942 * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
4943 Likewise.
4944 * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
4945 Likewise.
4946
32917686
JW
49472016-08-16 Jonathan Wakely <jwakely@redhat.com>
4948
4949 PR libstdc++/72847
4950 * include/bits/stl_bvector.h (_Bvector_base::_M_deallocate): Zero
4951 pointers to start and end of storage.
4952 * testsuite/23_containers/vector/bool/72847.cc: New test.
4953 * include/bits/vector.tcc (vector<bool>::_M_reallocate): Only update
4954 _M_finish after deallocating.
4955 (vector<bool>::_M_fill_insert): Likewise.
4956 (vector<bool>::_M_insert_range): Likewise.
4957 (vector<bool>::_M_insert_aux): Likewise.
4958
5c578ae4
VV
49592016-08-15 Ville Voutilainen <ville.voutilainen@gmail.com>
4960
4961 Implement LWG 2744 and LWG 2754.
4962 * include/std/any (any(ValueType&&)): Constrain with __is_in_place_type.
4963 (any(in_place_type_t<_ValueType>, _Args&&...)): Use _Decay.
4964 (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
4965 Likewise.
4966 (emplace(_Args&&...)): Likewise.
4967 (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
4968 * include/std/utility: (__is_in_place_type_impl): New.
4969 (__is_in_place_type): Likewise.
4970 * testsuite/20_util/any/assign/emplace.cc: Add tests for decaying
4971 emplace.
4972 * testsuite/20_util/any/cons/in_place.cc: Add tests for decaying
4973 in_place constructor.
4974 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
4975 * testsuite/20_util/any/requirements.cc: Add a test for
4976 in_place-constructing a non-default-constructible type.
4977
24299f65
VV
49782016-08-15 Ville Voutilainen <ville.voutilainen@gmail.com>
4979
4980 Add a feature macro for C++17 make_from_tuple.
4981 * include/std/tuple (__cpp_lib_make_from_tuple): New.
4982 (__make_from_tuple_impl(_Tuple&&, index_sequence<_Idx...>)):
4983 Qualify the call to get<>().
4984 * testsuite/20_util/tuple/make_from_tuple/1.cc: Adjust.
4985
0657379e
UB
49862016-08-15 Uros Bizjak <ubizjak@gmail.com>
4987
4988 * src/filesystem/ops.cc: Always include ostream and
4989 ext/stdio_filebuf.h.
4990 (do_copy_file): Check if _GLIBCXX_USE_FCHMODAT is defined.
4991 [_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case
4992 sendfile fails with ENOSYS or EINVAL.
4993
f9657322
TP
49942016-08-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
4995
4996 PR libstdc++/72840
4997 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Fix dg-error
4998 syntax.
4999
ca1ab6be
VV
50002016-08-11 Ville Voutilainen <ville.voutilainen@gmail.com>
5001
5002 Implement C++17 make_from_tuple.
5003 * include/std/tuple (__make_from_tuple_impl, make_from_tuple): New.
5004 * testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
5005
68a51b68
VV
50062016-08-11 Ville Voutilainen <ville.voutilainen@gmail.com>
5007
5008 Implement LWG 2758.
5009 * include/bits/basic_string.h
5010 (append(__sv_type, size_type, size_type)): Turn into a template,
5011 change parameter type, constrain, add a conversion to __sv_type
5012 from the dependent parameter type.
5013 (assign(__sv_type, size_type, size_type)): Likewise.
5014 (insert(size_type, __sv_type, size_type, size_type)): Likewise.
5015 (replace(size_type, size_type, __sv_type, size_type, size_type)):
5016 Likewise.
5017 (compare(size_type, size_type,__sv_type, size_type, size_type)):
5018 Likewise.
5019 * testsuite/21_strings/basic_string/lwg2758.cc: New.
5020
3e9f67e6
JW
50212016-08-06 Jonathan Wakely <jwakely@redhat.com>
5022
caee9cde
JW
5023 * doc/xml/manual/status_cxx2017.xml: Update status table.
5024 * doc/html/manual/status.html: Regenerate.
5025
ea2f1f49
JW
5026 * testsuite/lib/libstdc++.exp: Fix typo in comment.
5027
6ef835c6
JW
5028 PR libstdc++/72820
5029 * include/std/functional (_Function_base::_Base_manager::_M_clone):
5030 Qualify new operator.
5031 * testsuite/20_util/function/cons/72820.cc: New test.
5032
3e9f67e6
JW
5033 * doc/xml/manual/status_cxx2017.xml: Add missing LFTSv2 features.
5034 * doc/html/manual/status.html: Regenerate.
5035 * include/Makefile.am: Add new header.
5036 * include/Makefile.in: Regenerate.
5037 * include/bits/invoke.h: New header.
5038 (__invoke): Make constexpr. Add && to types in exception specification.
5039 * include/experimental/tuple (apply, __apply_impl): Fix non-reserved
5040 names. Include <bits/invoke.h> and use std::__invoke.
5041 * include/std/functional (__invfwd, __invoke_impl, __invoke): Move to
5042 new header.
5043 (invoke): Add && to types in exception specification.
5044 * include/std/tuple (apply, __apply_impl): Define for C++17.
5045 * testsuite/20_util/tuple/apply/1.cc: New test.
5046 * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error
5047 lineno.
5048
98e6e662
JW
50492016-08-05 Jonathan Wakely <jwakely@redhat.com>
5050
a0b1bf21
JW
5051 * doc/xml/manual/status_cxx2017.xml: Correct shared_from_this status.
5052 * doc/html/manual/status.html: Regenerate.
5053
5f6acdfb
JW
5054 * include/std/chrono (floor, ceil, round, abs): New for C++17.
5055 * testsuite/20_util/duration_cast/rounding.cc: New test.
5056 * testsuite/20_util/time_point_cast/rounding.cc: New test.
5057 * doc/xml/manual/status_cxx2017.xml: Update status table.
5058 * doc/html/manual/status.html: Regenerate.
5059 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
5060 dg-error lineno.
5061 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
5062 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
5063 * testsuite/20_util/duration/literals/range.cc: Likewise.
5064
98e6e662
JW
5065 * include/std/functional (__callable_functor): Remove.
5066 (_Function_handler::_M_invoke): Use __invoke instead of
5067 __callable_functor or mem_fn.
5068 (function::_Callable): Use lvalue in result_of expression.
5069 (function): Remove TODO comments about allocators.
5070 * testsuite/20_util/function/cons/refqual.cc: New test.
5071
7d2035fa
JW
50722016-08-04 Jonathan Wakely <jwakely@redhat.com>
5073
42183d03
JW
5074 * doc/xml/manual/status_cxx2017.xml: Update status table.
5075 * include/std/functional (__inv_unwrap): Move to <type_traits>.
5076 (__invoke_impl): Remove exception specifications.
5077 (__invoke, invoke): Add exception specifications using
5078 __is_nothrow_callable.
5079 * include/std/type_traits (__inv_unwrap): Move from <functional>.
5080 (__is_callable_impl, __call_is_nt, __call_is_nothrow): New helpers.
5081 (__is_callable, __is_nothrow_callable): New traits.
5082 (is_callable, is_callable_v): New C++17 traits.
5083 (is_nothrow_callable, is_nothrow_callable_v): Likewise.
5084 * testsuite/20_util/is_callable/requirements/
5085 explicit_instantiation.cc: New test.
5086 * testsuite/20_util/is_callable/requirements/
5087 explicit_instantiation_ext.cc: New test.
5088 * testsuite/20_util/is_callable/requirements/typedefs.cc: New test.
5089 * testsuite/20_util/is_callable/requirements/typedefs_ext.cc: New
5090 test.
5091 * testsuite/20_util/is_callable/value.cc: New test.
5092 * testsuite/20_util/is_callable/value_ext.cc: New test.
5093 * testsuite/20_util/is_nothrow_callable/requirements/
5094 explicit_instantiation.cc: New test.
5095 * testsuite/20_util/is_nothrow_callable/requirements/
5096 explicit_instantiation_ext.cc: New test.
5097 * testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc:
5098 New test.
5099 * testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc:
5100 New test.
5101 * testsuite/20_util/is_nothrow_callable/value.cc: New test.
5102 * testsuite/20_util/is_nothrow_callable/value_ext.cc: New test.
5103
246c618e
JW
5104 * doc/xml/manual/status_cxx2017.xml: Update C++17 status table.
5105 * doc/html/manual/status.html: Regenerate.
5106
9a8e528c
JW
5107 * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Use
5108 effective target not dg-options. Move check for feature-test macro to:
5109 * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
5110 New test.
5111
7d2035fa
JW
5112 * include/std/functional (_Unwrap): Rename to __inv_unwrap.
5113 (__invfwd): Adjust.
5114 (__invoke_impl): Remove unused template parameters.
5115 * testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
5116 parameter.
5117 * testsuite/20_util/function_objects/invoke/ref_ext.cc: Copy 59768.cc
5118 and test __invoke extension for C++11.
5119
27631a25
JW
51202016-08-03 Jonathan Wakely <jwakely@redhat.com>
5121
c7fdbdcd
JW
5122 * include/bits/shared_ptr_base.h (__cpp_lib_enable_shared_from_this):
5123 Define feature-test macro.
5124 * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Test
5125 for the macro.
5126
f21f4463
JW
5127 * include/bits/shared_ptr.h (shared_ptr::weak_type): Define.
5128 * include/bits/shared_ptr_base.h (__shared_ptr::weak_type): Define.
5129 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
5130 * testsuite/20_util/shared_ptr/requirements/weak_type.cc: New test.
5131 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
5132
32eaac9c
JW
5133 * include/std/utility (as_const): Define.
5134 * testsuite/20_util/as_const/1.cc: New test.
5135 * testsuite/20_util/as_const/rvalue_neg.cc: New test.
5136
b7dabce5
JW
5137 * include/bits/shared_ptr.h (owner_less): Add default template
5138 argument.
5139 * include/bits/shared_ptr_base.h (_Sp_owner_less<void, void>): Define
5140 specialization.
5141 (owner_less<void>): Define specialization.
5142 * include/bits/stl_function.h (__cpp_lib_transparent_operators):
5143 Update value.
5144 * testsuite/20_util/owner_less/void.cc: New test.
5145 * testsuite/experimental/feat-cxx14.cc: Update macro value tested.
5146
068c8ac1
JW
5147 * include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
5148 Define feature-test macro.
5149 * include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise.
5150 * include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
5151 * include/std/type_traits (__cpp_lib_logical_traits): Fix value.
5152 (__cpp_lib_type_trait_variable_templates): Define.
5153
0bd9bdb4
JW
5154 * include/bits/stl_function.h: Remove commented-out macro.
5155 * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
5156 Define feature-test macro.
5157 * testsuite/experimental/feat-cxx14.cc: Add tests for more macros.
5158
f8571e51
JW
5159 * include/bits/c++config (_GLIBCXX_USE_STD_SPEC_FUNCS): Define for
5160 C++17, or for C++11/C++14 when __STDCPP_WANT_MATH_SPEC_FUNCS__ is
5161 true.
5162 * include/bits/specfun.h [!__STDCPP_WANT_MATH_SPEC_FUNCS__]: Don't
5163 do #error for C++17.
5164 * include/c_global/cmath: Check _GLIBCXX_USE_STD_SPEC_FUNCS instead
5165 of __STDCPP_WANT_MATH_SPEC_FUNCS__.
5166 * include/tr1/bessel_function.tcc: Likewise.
5167 * include/tr1/beta_function.tcc: Likewise.
5168 * include/tr1/cmath: Likewise.
5169 * include/tr1/ell_integral.tcc: Likewise.
5170 * include/tr1/exp_integral.tcc: Likewise.
5171 * include/tr1/gamma.tcc: Likewise.
5172 * include/tr1/hypergeometric.tcc: Likewise.
5173 * include/tr1/legendre_function.tcc: Likewise.
5174 * include/tr1/modified_bessel_func.tcc: Likewise.
5175 * include/tr1/poly_hermite.tcc: Likewise.
5176 * include/tr1/poly_laguerre.tcc: Likewise.
5177 * include/tr1/riemann_zeta.tcc: Likewise.
5178 * include/tr1/special_function_util.h: Likewise.
5179 * testsuite/26_numerics/headers/cmath/functions_std_c++17.cc: New.
5180
27631a25
JW
5181 * include/std/type_traits (has_trivial_default_constructor): Remove.
5182 (has_trivial_copy_constructor, has_trivial_copy_assign): Likewise.
5183 * testsuite/20_util/has_trivial_copy_assign/requirements/
5184 explicit_instantiation.cc: Remove test.
5185 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
5186 line number.
5187 * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
5188 Likewise.
5189 * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
5190 * testsuite/20_util/has_trivial_copy_constructor/requirements/
5191 explicit_instantiation.cc: Likewise.
5192 * testsuite/20_util/has_trivial_copy_constructor/requirements/
5193 typedefs.cc: Likewise.
5194 * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
5195 * testsuite/20_util/has_trivial_default_constructor/requirements/
5196 explicit_instantiation.cc: Likewise.
5197 * testsuite/20_util/has_trivial_default_constructor/requirements/
5198 typedefs.cc: Likewise.
5199 * testsuite/20_util/has_trivial_default_constructor/value.cc:
5200 Likewise.
5201 * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
5202 Check has_trivial_default_constructor, has_trivial_copy_constructor,
5203 and has_trivial_copy_assign are not defined.
5204 * testsuite/20_util/pair/requirements/dr801.cc: Remove commented out
5205 tests.
5206 * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
5207 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
5208 dg-error line number.
5209 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
5210 Likewise.
5211
69332dba
JW
52122016-08-02 Jonathan Wakely <jwakely@redhat.com>
5213
589a30d1
JW
5214 * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
5215 Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
5216 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
5217 Likewise.
5218 * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
5219 Likewise.
5220 * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
5221 Likewise.
5222 * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
5223 Likewise.
5224 * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
5225 Likewise.
5226 * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
5227 Likewise.
5228
8bcd00bb
JW
5229 * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
5230 comments.
5231
a4e1011c
JW
5232 * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Move
5233 dg-error to relevant line.
5234 * testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
5235 Likewise.
5236 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
5237
64dde682
JW
5238 * scripts/testsuite_flags.in: Add -fno-show-column to cxxflags.
5239
807bd096
JW
5240 * testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if
5241 options are present that aren't valid for C.
5242 * testsuite/abi/header_cxxabi.c: Likewise.
5243
8c65cd30
JW
5244 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
5245 check_value.cc: Do not add special functions to namespace std in TR1
5246 test.
5247
196c9e7a
JW
5248 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Only
5249 run for C++11 and later.
5250 * testsuite/ext/special_functions/conf_hyperg/check_value.cc:
5251 Likewise.
5252 * testsuite/ext/special_functions/conf_hyperg/compile.cc: Likewise.
5253 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
5254 * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
5255 * testsuite/ext/special_functions/hyperg/compile.cc: Likewise.
5256 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
5257 Likewise.
5258 * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
5259 Likewise.
5260 * testsuite/special_functions/01_assoc_laguerre/compile.cc: Likewise.
5261 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc:
5262 Likewise.
5263 * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
5264 Likewise.
5265 * testsuite/special_functions/02_assoc_legendre/check_value.cc:
5266 Likewise.
5267 * testsuite/special_functions/02_assoc_legendre/compile.cc: Likewise.
5268 * testsuite/special_functions/02_assoc_legendre/compile_2.cc:
5269 * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
5270 * testsuite/special_functions/03_beta/check_value.cc: Likewise.
5271 * testsuite/special_functions/03_beta/compile.cc: Likewise.
5272 * testsuite/special_functions/03_beta/compile_2.cc: Likewise.
5273 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
5274 * testsuite/special_functions/04_comp_ellint_1/check_value.cc:
5275 Likewise.
5276 * testsuite/special_functions/04_comp_ellint_1/compile.cc: Likewise.
5277 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Likewise.
5278 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
5279 * testsuite/special_functions/05_comp_ellint_2/check_value.cc:
5280 Likewise.
5281 * testsuite/special_functions/05_comp_ellint_2/compile.cc: Likewise.
5282 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Likewise.
5283 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
5284 * testsuite/special_functions/06_comp_ellint_3/check_value.cc:
5285 Likewise.
5286 * testsuite/special_functions/06_comp_ellint_3/compile.cc: Likewise.
5287 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Likewise.
5288 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
5289 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc:
5290 Likewise.
5291 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: Likewise.
5292 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Likewise.
5293 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
5294 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
5295 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc:
5296 Likewise.
5297 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: Likewise.
5298 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Likewise.
5299 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
5300 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc:
5301 Likewise.
5302 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: Likewise.
5303 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Likewise.
5304 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
5305 * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
5306 * testsuite/special_functions/10_cyl_neumann/compile.cc: Likewise.
5307 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Likewise.
5308 * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
5309 * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
5310 * testsuite/special_functions/11_ellint_1/compile.cc: Likewise.
5311 * testsuite/special_functions/11_ellint_1/compile_2.cc: Likewise.
5312 * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
5313 * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
5314 * testsuite/special_functions/12_ellint_2/compile.cc: Likewise.
5315 * testsuite/special_functions/12_ellint_2/compile_2.cc: Likewise.
5316 * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
5317 * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
5318 * testsuite/special_functions/13_ellint_3/compile.cc: Likewise.
5319 * testsuite/special_functions/13_ellint_3/compile_2.cc: Likewise.
5320 * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
5321 * testsuite/special_functions/14_expint/check_value.cc: Likewise.
5322 * testsuite/special_functions/14_expint/compile.cc: Likewise.
5323 * testsuite/special_functions/14_expint/compile_2.cc: Likewise.
5324 * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
5325 * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
5326 * testsuite/special_functions/15_hermite/compile.cc: Likewise.
5327 * testsuite/special_functions/15_hermite/compile_2.cc: Likewise.
5328 * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
5329 * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
5330 * testsuite/special_functions/16_laguerre/compile.cc: Likewise.
5331 * testsuite/special_functions/16_laguerre/compile_2.cc: Likewise.
5332 * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
5333 * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
5334 * testsuite/special_functions/17_legendre/compile.cc: Likewise.
5335 * testsuite/special_functions/17_legendre/compile_2.cc: Likewise.
5336 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
5337 * testsuite/special_functions/18_riemann_zeta/check_value.cc:
5338 Likewise.
5339 * testsuite/special_functions/18_riemann_zeta/compile.cc: Likewise.
5340 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Likewise.
5341 * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
5342 * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
5343 * testsuite/special_functions/19_sph_bessel/compile.cc: Likewise.
5344 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Likewise.
5345 * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
5346 * testsuite/special_functions/20_sph_legendre/check_value.cc:
5347 Likewise.
5348 * testsuite/special_functions/20_sph_legendre/compile.cc: Likewise.
5349 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Likewise.
5350 * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
5351 * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
5352 * testsuite/special_functions/21_sph_neumann/compile.cc: Likewise.
5353 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Likewise.
5354
69332dba
JW
5355 * testsuite/tr1/5_numerical_facilities/special_functions/
5356 08_cyl_bessel_i/check_value.cc: Use __attribute__((unused)) instead
5357 of [[gnu::unused]].
5358 * testsuite/tr1/5_numerical_facilities/special_functions/
5359 09_cyl_bessel_j/check_value.cc: Likewise.
5360 * testsuite/tr1/5_numerical_facilities/special_functions/
5361 10_cyl_bessel_k/check_value.cc: Likewise.
5362 * testsuite/tr1/5_numerical_facilities/special_functions/
5363 11_cyl_neumann/check_value.cc: Likewise.
5364 * testsuite/tr1/5_numerical_facilities/special_functions/
5365 21_sph_bessel/check_value.cc: Likewise.
5366 * testsuite/tr1/5_numerical_facilities/special_functions/
5367 23_sph_neumann/check_value.cc: Likewise.
5368
e1539627
RO
53692016-08-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5370
5371 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
5372 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
5373 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
5374 * config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
5375 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
5376 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.
5377
c1b6948e
JW
53782016-08-02 Jonathan Wakely <jwakely@redhat.com>
5379
e877144d
JW
5380 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Skip
5381 test if -flto used.
5382
c1b6948e
JW
5383 * testsuite/lib/libstdc++.exp (v3-build_support): Add -fno-lto to
5384 additional flags for compiling libtestc++.a objects.
5385
9b46e4d6
JW
53862016-08-01 Jonathan Wakely <jwakely@redhat.com>
5387
92d58dee
JW
5388 * include/bits/basic_string.h (data() const): Update comment.
5389 (data()): Add non-const overload for C++17.
5390 * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
5391 * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
5392
0f86525a
JW
5393 * include/bits/basic_string.tcc: Disable explicit instantiation
5394 declarations for C++17.
5395
9839ff60
JW
5396 * testsuite/23_containers/unordered_map/requirements/53339.cc: Remove
5397 ignored "xfail" from { dg-do compile { xfail selector } } directive.
5398 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
5399 Likewise.
5400 * testsuite/26_numerics/headers/cmath/
5401 c99_classification_macros_c++11.cc: Likewise.
5402 * testsuite/26_numerics/headers/cmath/
5403 c99_classification_macros_c++98.cc: Likewise.
5404 * testsuite/26_numerics/headers/cmath/
5405 c99_classification_macros_c.cc: Likewise.
5406
cbcc9fe8
JW
5407 * testsuite/backward/hash_set/check_construct_destroy.cc: Account
5408 for different construct/destroy counts in C++98 mode.
5409
74811472
JW
5410 * testsuite/17_intro/freestanding.cc: Remove "-x c" from dg-options.
5411
a02a61ee
JW
5412 * testsuite/20_util/tuple/cons/66338.cc: Limit test to C++11 and
5413 later.
5414 * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc:
5415 Likewise.
5416
98b5fb3c
JW
5417 * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use
5418 C++98-compatible initialization for array.
5419
6f3b8891
JW
5420 * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Remove
5421 unused header and variable from compile-only test.
5422 * testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise.
5423 * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
5424 * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
5425 * testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
5426 Likewise.
5427
2ab794eb
JW
5428 * testsuite/experimental/string_view/operations/rfind/char/2.cc:
5429 Remove duplicate dg-options directive.
5430
4d16871b
JW
5431 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
5432 808590.cc: Use -std=gnu++98 instead of -std=gnu++03.
5433
e3509835
JW
5434 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Remove
5435 linker options from compile-only tests.
5436 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
5437 Likewise.
5438
9b46e4d6
JW
5439 * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test
5440 supported for C++11 and later.
5441 * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
5442 * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
5443
77c3c27e
UB
54442016-08-01 Uros Bizjak <ubizjak@gmail.com>
5445
5446 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
5447
f245e3a0
JW
54482016-07-31 Jonathan Wakely <jwakely@redhat.com>
5449
c4da1da2
JW
5450 * testsuite/20_util/conditional/requirements/typedefs.cc: Change to
5451 compile-only test.
5452
9d5b70b0
JW
5453 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
5454 Ensure test is compiled with optimization.
5455
ee628057
JW
5456 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
5457 Adjust dg-prune-output pattern for error in C++98 mode.
5458
d23d1bee
JW
5459 * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Only
5460 run for C++11 or later.
5461
f2738d6c
JW
5462 * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Fix
5463 test to not rely on GNU extension (escaped normal characters in POSIX
5464 BRE). Enable tests for other strings which are now supported.
5465
77f3d979
JW
5466 * testsuite/20_util/pair/astuple/get_neg.cc: Use effective-target
5467 c++11 instead of setting -std=gnu++14.
5468
3c040fa4
JW
5469 PR libstdc++/72745
5470 * include/std/array (get): Use positive message for static assertions.
5471 * include/std/functional (_Safe_tuple_element_t): Fix indentation.
5472 * include/std/tuple (tuple_element<I, tuple<>>): Add partial
5473 specialization for invalid indices, with static assertion.
5474 * testsuite/20_util/tuple/element_access/get_neg.cc: New test.
5475
f245e3a0
JW
5476 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Move
5477 dg-error to relevant line.
5478 * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
5479 Likewise.
5480 * testsuite/23_containers/forward_list/requirements/dr438/
5481 assign_neg.cc: Likewise.
5482 * testsuite/23_containers/forward_list/requirements/dr438/
5483 constructor_1_neg.cc: Likewise.
5484 * testsuite/23_containers/forward_list/requirements/dr438/
5485 constructor_2_neg.cc: Likewise.
5486 * testsuite/23_containers/forward_list/requirements/dr438/
5487 insert_neg.cc: Likewise.
5488 * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
5489 Likewise.
5490 * testsuite/26_numerics/random/linear_congruential_engine/
5491 requirements/non_uint_neg.cc: Likewise.
5492 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
5493 Likewise. Also test for std::atomic_address.
5494
8c914227
VV
54952016-07-31 Ville Voutilainen <ville.voutilainen@gmail.com>
5496
5497 Add missing variable traits, fix testsuite failures.
5498 * include/bits/uses_allocator.h (uses_allocator_v): New.
5499 * include/std/functional (is_bind_expression_v, is_placeholder_v):
5500 Likewise.
5501 * testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
5502 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
5503 * testsuite/20_util/duration/literals/range.cc: Likewise.
5504 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
5505 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
5506 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
5507 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
5508 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
5509 Likewise.
5510 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
5511 * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
5512 New.
5513
7523c5eb
JW
55142016-07-31 Jonathan Wakely <jwakely@redhat.com>
5515
2f297149
JW
5516 * testsuite/18_support/numeric_limits/40856.cc [__STRICT_ANSI__]: Do
5517 not test 128-bit types.
5518 * testsuite/20_util/is_floating_point/value.cc: Likewise.
5519 * testsuite/20_util/is_integral/value.cc: Likewise.
5520 * testsuite/20_util/is_signed/value.cc: Likewise.
5521 * testsuite/20_util/is_unsigned/value.cc: Likewise.
5522 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
5523 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
5524 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
5525 Likewise.
5526 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
5527 Likewise.
5528
7523c5eb
JW
5529 * testsuite/26_numerics/headers/cstdlib/54686.c: Rename to 54686.cc.
5530
137422c8
VV
55312016-07-29 Ville Voutilainen <ville.voutilainen@gmail.com>
5532
5533 Implement C++17 variable templates for type traits.
5534 * include/std/chrono (treat_as_floating_point_v): New.
5535 * include/std/ratio (ratio_equal_v, ratio_not_equal_v)
5536 (ratio_less_v, ratio_less_equal_v, ratio_greater_v)
5537 (ratio_greater_equal_v): Likewise.
5538 * include/std/system_error (is_error_code_enum_v)
5539 (is_error_condition_enum_v): Likewise.
5540 * include/std/tuple (tuple_size_v): Likewise.
5541 * type_traits (conjunction_v, disjunction_v, negation_v)
5542 (is_void_v, is_null_pointer_v, is_integral_v, is_floating_point_v)
5543 (is_array_v, is_pointer_v, is_lvalue_reference_v)
5544 (is_rvalue_reference_v, is_member_object_pointer_v)
5545 (is_member_function_pointer_v, is_enum_v, is_union_v)
5546 (is_class_v, is_function_v, is_reference_v, is_arithmetic_v)
5547 (is_fundamental_v, is_object_v, is_scalar_v, is_compound_v)
5548 (is_member_pointer_v, is_const_v, is_volatile_v, is_trivial_v)
5549 (is_trivially_copyable_v, is_standard_layout_v)
5550 (is_pod_v, is_literal_type_v, is_empty_v, is_polymorphic_v)
5551 (is_abstract_v, is_final_v, is_signed_v, is_unsigned_v)
5552 (is_constructible_v, is_default_constructible_v)
5553 (is_copy_constructible_v, is_move_constructible_v)
5554 (is_assignable_v, is_copy_assignable_v, is_move_assignable_v)
5555 (is_destructible_v, is_trivially_constructible_v)
5556 (is_trivially_default_constructible_v)
5557 (is_trivially_copy_constructible_v, is_trivially_move_constructible_v)
5558 (is_trivially_assignable_v, is_trivially_copy_assignable_v)
5559 (is_trivially_move_assignable_v, is_trivially_destructible_v)
5560 (is_nothrow_constructible_v, is_nothrow_default_constructible_v)
5561 (is_nothrow_copy_constructible_v, is_nothrow_move_constructible_v)
5562 (is_nothrow_assignable_v, is_nothrow_copy_assignable_v)
5563 (is_nothrow_move_assignable_v, is_nothrow_destructible_v)
5564 (has_virtual_destructor_v, alignment_of_v, rank_v, extent_v)
5565 (is_same_v, is_base_of_v, is_convertible_v): Likewise.
5566 * testsuite/19_diagnostics/error_code/is_error_code_v.cc: Likewise.
5567 * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
5568 Likewise.
5569 * testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
5570 * testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
5571 * testsuite/20_util/variable_templates_for_traits.cc: Likewise.
5572
0c4c4909
AS
55732016-07-29 Andreas Schwab <schwab@linux-m68k.org>
5574
5575 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
5576 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
5577 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
5578
fe97ccec
JW
55792016-07-29 Jonathan Wakely <jwakely@redhat.com>
5580
13ec6e5e
JW
5581 * doc/xml/manual/abi.xml: Document 6.0.22 library version.
5582 * doc/html/manual/abi.html: Regenerate.
5583
62589e99
JW
5584 * acinclude.m4 (libtool_VERSION): Bump to 6:23:0.
5585 * config/abi/pre/gnu.ver: Add 3.4.23 version for new basic_string
5586 symbols.
5587 * configure: Regenerate.
5588 * testsuite/util/testsuite_abi.cc: Add new symbol version.
5589
fe97ccec
JW
5590 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
5591 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
5592 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
5593 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
5594 Likewise.
5595 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
5596 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
5597 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
5598
2de6b254
JW
55992016-07-28 Jonathan Wakely <jwakely@redhat.com>
5600
1a2196e4
JW
5601 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
5602 Adjust dg-prune-output pattern for error in C++98 mode.
5603 * testsuite/23_containers/deque/requirements/dr438/
5604 constructor_1_neg.cc: Likewise.
5605 * testsuite/23_containers/deque/requirements/dr438/
5606 constructor_2_neg.cc: Likewise.
5607 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
5608 Likewise.
5609 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
5610 Likewise.
5611 * testsuite/23_containers/list/requirements/dr438/
5612 constructor_1_neg.cc: Likewise.
5613 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
5614 Likewise.
5615 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
5616 Likewise.
5617 * testsuite/23_containers/vector/requirements/dr438/
5618 constructor_1_neg.cc: Likewise.
5619 * testsuite/23_containers/vector/requirements/dr438/
5620 constructor_2_neg.cc: Likewise.
5621 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
5622 Likewise.
5623
e539b4ff
JW
5624 * testsuite/23_containers/vector/check_construct_destroy.cc: Account
5625 for different construct/destroy counts in C++98 mode.
5626
c3c2f973
JW
5627 * testsuite/17_intro/headers/c++2011/stdc++.cc: Change target-specific
5628 dg-options to dg-additional-options so that default options are used.
5629 * testsuite/17_intro/headers/c++2011/stdc++_multiple_inclusion.cc:
5630 Likewise.
5631 * testsuite/17_intro/headers/c++2014/stdc++.cc: Likewise.
5632 * testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc:
5633 Likewise.
5634 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
5635 Use dg-additional-options instead of repeating the common options.
5636
2de6b254
JW
5637 * testsuite/22_locale/conversions/string/1.cc: Remove unintended
5638 dg-do compile directive.
5639 * testsuite/26_numerics/headers/cmath/fabs_inline.cc: Fix syntax of
5640 dg-do directive.
5641 * testsuite/26_numerics/valarray/const_bracket.cc: Likewise.
5642
ca8f2cb1
VV
56432016-07-28 Ville Voutilainen <ville.voutilainen@gmail.com>
5644
5645 Implement std::string_view and P0254r2,
5646 Integrating std::string_view and std::string.
5647 * include/Makefile.am: Add string_view and string_view.tcc
5648 to the exported headers.
5649 * include/Makefile.in: Likewise.
5650 * include/bits/basic_string.h: Include <string_view> in C++17 mode.
5651 (__sv_type): New.
5652 (basic_string(__sv_type, const _Alloc&)): Likewise.
5653 (operator=(__sv_type)): Likewise.
5654 (operator __sv_type()): Likewise.
5655 (operator+=(__sv_type)): Likewise.
5656 (append(__sv_type __sv)): Likewise.
5657 (append(__sv_type, size_type, size_type)): Likewise.
5658 (assign(__sv_type)): Likewise.
5659 (assign(__sv_type, size_type, size_type)): Likewise.
5660 (insert(size_type, __sv_type)): Likewise.
5661 (insert(size_type, __sv_type, size_type, size_type)): Likewise.
5662 (replace(size_type, size_type, __sv_type)): Likewise.
5663 (replace(size_type, size_type, __sv_type, size_type, size_type)):
5664 Likewise.
5665 (replace(const_iterator, const_iterator, __sv_type)): Likewise.
5666 (find(__sv_type, size_type)): Likewise.
5667 (rfind(__sv_type, size_type)): Likewise.
5668 (find_first_of(__sv_type, size_type)): Likewise.
5669 (find_last_of(__sv_type, size_type)): Likewise.
5670 (find_first_not_of(__sv_type, size_type)): Likewise.
5671 (find_last_not_of(__sv_type, size_type)): Likewise.
5672 (compare(__sv_type)): Likewise.
5673 (compare(size_type, size_type, __sv_type)): Likewise.
5674 (compare(size_type, size_type, __sv_type, size_type, size_type)):
5675 Likewise.
5676 * include/bits/string_view.tcc: New.
5677 * include/std/string_view: Likewise.
5678 * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
5679 * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
5680 * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
5681 Likewise.
5682 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
5683 Likewise.
5684 * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
5685 Likewise.
5686 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
5687 Likewise.
5688 * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
5689 Likewise.
5690 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
5691 Likewise.
5692 * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
5693 Likewise.
5694 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
5695 Likewise.
5696 * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
5697 Likewise.
5698 * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
5699 Likewise.
5700 * testsuite/21_strings/basic_string/operations/find/char/5.cc:
5701 Likewise.
5702 * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
5703 Likewise.
5704 * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
5705 * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
5706 * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
5707 * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
5708 * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
5709 * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
5710 * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
5711 * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
5712 * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
5713 * testsuite/21_strings/basic_string_view/element_access/char/1.cc:
5714 Likewise.
5715 * testsuite/21_strings/basic_string_view/element_access/char/2.cc:
5716 Likewise.
5717 * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
5718 Likewise.
5719 * testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
5720 Likewise.
5721 * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
5722 Likewise.
5723 * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
5724 Likewise.
5725 * testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
5726 Likewise.
5727 * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
5728 Likewise.
5729 * testsuite/21_strings/basic_string_view/include.cc: Likewise.
5730 * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
5731 * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
5732 * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
5733 * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
5734 Likewise.
5735 * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
5736 Likewise.
5737 * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
5738 Likewise.
5739 * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
5740 Likewise.
5741 * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
5742 Likewise.
5743 * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
5744 Likewise.
5745 * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
5746 Likewise.
5747 * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
5748 Likewise.
5749 * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
5750 Likewise.
5751 * testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
5752 Likewise.
5753 * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
5754 Likewise.
5755 * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
5756 Likewise.
5757 * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
5758 Likewise.
5759 * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
5760 Likewise.
5761 * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
5762 Likewise.
5763 * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
5764 Likewise.
5765 * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
5766 Likewise.
5767 * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
5768 Likewise.
5769 * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
5770 Likewise.
5771 * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
5772 Likewise.
5773 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
5774 Likewise.
5775 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
5776 Likewise.
5777 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
5778 Likewise.
5779 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
5780 Likewise.
5781 * testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
5782 Likewise.
5783 * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
5784 Likewise.
5785 * testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
5786 Likewise.
5787 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
5788 Likewise.
5789 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
5790 Likewise.
5791 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
5792 Likewise.
5793 * testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
5794 Likewise.
5795 * testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
5796 Likewise.
5797 * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
5798 Likewise.
5799 * testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise.
5800 * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
5801 Likewise.
5802 * testsuite/21_strings/basic_string_view/range_access/char/1.cc:
5803 Likewise.
5804 * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
5805 Likewise.
5806 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
5807 Likewise.
5808 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
5809 Likewise.
5810 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
5811 Likewise.
5812 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
5813 Likewise.
5814 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
5815 Likewise.
5816 * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
5817 Likewise.
5818 * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
5819 * testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
5820
427f68c6
JW
58212016-07-27 Jonathan Wakely <jwakely@redhat.com>
5822
5823 * testsuite/20_util/forward/1_neg.cc: Move dg-error to right line.
5824
a837417c
GC
58252016-07-25 Georeth Chow <georeth2010@gmail.com>
5826
5827 * include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify
5828 _S_concat enumerator.
5829 * testsuite/ext/rope/6.cc: New test.
5830
19bb30c0
JW
58312016-07-25 Jonathan Wakely <jwakely@redhat.com>
5832
5833 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use
5834 std::mt19937, std::thread and std::atomic to simplify test.
5835 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
5836
960637ac
JW
58372016-07-22 Jonathan Wakely <jwakely@redhat.com>
5838
8cab3d18
JW
5839 PR libstdc++/71964
5840 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
5841 (basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor.
5842 * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
5843 * testsuite/21_strings/basic_string/allocator/71964.cc: New test.
5844 * testsuite/23_containers/set/allocator/71964.cc: New test.
5845
960637ac
JW
5846 * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use
5847 delete[] instead of delete.
5848
22620c14
JW
58492016-07-21 Jonathan Wakely <jwakely@redhat.com>
5850
8b649cd3
JW
5851 * include/experimental/propagate_const (propagate_const::__t): Rename
5852 to _M_t and remove comment. Qualify std::move and std::forward.
5853 * testsuite/experimental/propagate_const/cons/default.cc: Fix test.
5854
509b778f
JW
5855 * testsuite/23_containers/vector/zero_sized_allocations.cc:
5856 Define sized deallocation function.
5857 * testsuite/util/testsuite_new_operators.h:
5858 (operator delete(void*, const std::nothrow_t&)): Define nothrow
5859 deallocation function.
5860
e93a101f
JW
5861 * testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix
5862 reads past the end of strings.
5863 * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
5864 Likewise.
5865 * testsuite/21_strings/char_traits/requirements/short/1.cc: Fix
5866 invalid array accesses.
5867 * testsuite/experimental/string_view/operations/compare/char/1.cc:
5868 Fix read past the end of string.
5869 * testsuite/util/testsuite_character.cc: Fix out-of-bounds write.
5870
0a024155
JW
5871 * testsuite/24_iterators/container_access.cc: Fix missing returns.
5872 * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
5873
22620c14
JW
5874 * testsuite/18_support/new_delete_placement.cc: Don't allocate (and
5875 leak) memory for arguments to placement delete.
5876 * testsuite/20_util/addressof/1.cc: Don't leak memory.
5877 * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
5878 * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
5879 Likewise.
5880
18407bfb
JW
58812016-07-20 Jonathan Wakely <jwakely@redhat.com>
5882
09a855ae
JW
5883 * doc/xml/manual/intro.xml: Document DR 2684 status.
5884 * doc/html/*: Regenerate.
5885
e87b7d52
JW
5886 * include/std/atomic (atomic_int8_t, atomic_uint8_t, atomic_int16_t)
5887 (atomic_uint16_t, atomic_int32_t, atomic_uint32_t, atomic_int64_t)
5888 (atomic_uint64_t): Define (LWG 2441).
5889 * testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Remove empty
5890 lines.
5891 * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Test for
5892 the new types.
5893 * doc/xml/manual/intro.xml: Document DR 2441 status.
5894
07c772ed
JW
5895 * include/std/istream (operator>>(basic_istream&&, _Tp&)): Adjust
5896 to use perfect forwarding (LWG 2328).
5897 * testsuite/27_io/rvalue_streams.cc: Test perfect forwarding.
5898 * doc/xml/manual/intro.xml: Document DR 2328 status.
5899
18407bfb
JW
5900 * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Use
5901 static objects for catching nullptr as pointer to member types.
5902
40f3e913
VV
59032016-07-18 Ville Voutilainen <ville.voutilainen@gmail.com>
5904
5905 Clean up optional's comments.
5906 * include/std/optional: Remove incorrect section headers
5907 from comments when redundant, replace bare section
5908 headers with more descriptive comments.
5909
479d0ed5
JW
59102016-07-15 Jonathan Wakely <jwakely@redhat.com>
5911
4f5f9962
JW
5912 * include/bits/algorithmfwd.h: Change C++0x to C++11 in comments.
5913 * include/bits/move.h: Likewise.
5914 * include/bits/postypes.h: Likewise.
5915 * include/debug/bitset: Likewise.
5916 * include/ext/pb_ds/detail/type_utils.hpp: Likewise.
5917 * include/ext/string_conversions.h: Change C++0x to __cxx11 in
5918 comment.
5919 * testsuite/27_io/fpos/14320-1.cc: Change C++0x to C++11 in comment.
5920 * testsuite/util/thread/all.h: Likewise.
5921
d1129d45
JW
5922 * include/bits/stl_algo.h (for_each): Remove redundant _GLIBCXX_MOVE
5923 and adjust comment.
5924
479d0ed5
JW
5925 PR c++/58796
5926 * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Make
5927 nullptr match handlers of pointer type.
5928
4db1cb44
ESR
59292016-07-15 Edward Smith-Rowland <3dw4rd@verizon.net>
5930
5931 Implement C++17 P0025 clamp.
5932 * include/bits/algorithmfwd.h: Declare clamp overloads.
5933 * include/bits/stl_algo.h: Implement clamp. Feature __cpp_lib_clamp.
5934 * testsuite/25_algorithms/clamp/1.cc: New test.
5935 * testsuite/25_algorithms/clamp/2.cc: New test.
5936 * testsuite/25_algorithms/clamp/constexpr.cc: New test.
5937 * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
5938 1.cc: New test.
5939 * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
5940 pod.cc: New test.
5941
1ec0f763
VV
59422016-07-14 Ville Voutilainen <ville.voutilainen@gmail.com>
5943
5944 Fix the constraints for any's assignment operator template to properly
5945 reject assignment from a non-copyable lvalue.
5946 * include/std/any (operator=(_ValueType&&)): Constrain the decayed
5947 type for is_copy_constructible,
5948 * testsuite/20_util/any/requirements.cc: Add a test for
5949 non-copyable lvalues.
5950
0a2bf188
JW
59512016-07-14 Jonathan Wakely <jwakely@redhat.com>
5952
ea5ec6b7
JW
5953 * include/experimental/functional: Include <parallel/algorithm> in
5954 Parallel Mode.
5955
47d5cb3c
JW
5956 * testsuite/experimental/functional/searchers.cc: Include <algorithm>
5957 for std::search.
5958
0a2bf188
JW
5959 PR libstdc++/70716
5960 * include/bits/forward_list.h (forward_list): Update doxygen comments
5961 to reflect allocator propagation semantics. Remove ambiguous
5962 statements about data being lost.
5963 * include/bits/stl_deque.h (deque): Likewise.
5964 * include/bits/stl_list.h (list): Likewise.
5965 * include/bits/stl_map.h (map): Likewise.
5966 * include/bits/stl_multimap.h (multimap): Likewise.
5967 * include/bits/stl_multiset.h (multiset): Likewise.
5968 * include/bits/stl_set.h (set): Likewise.
5969 * include/bits/stl_vector.h (vector): Likewise.
5970 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
5971 Likewise.
5972 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
5973 Likewise.
5974
25a69162
VV
59752016-07-14 Ville Voutilainen <ville.voutilainen@gmail.com>
5976
5977 Implement P0032R3, Homogeneous interface for variant, any and optional,
5978 for the parts concerning any and optional.
5979 * include/std/any (_Storage()): Make constexpr and have it
5980 initialize _M_ptr.
5981 (any()): Make constexpr.
5982 (any(const any&)): Adjust.
5983 (any(any&&)): Likewise.
5984 (__any_constructible_t): New.
5985 (any(_ValueType&&)): Constrain.
5986 (any(in_place_type_t<_Tp>, _Args&&...)): New.
5987 (any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)):
5988 Likewise.
5989 (~any()): Adjust.
5990 (operator=(const any&)): Likewise.
5991 (operator=(any&&)): Likewise.
5992 (operator=(_ValueType&&)): Constrain.
5993 (emplace(_Args&&...)): New.
5994 (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
5995 (clear()): Remove.
5996 (reset()): New.
5997 (swap(any&)): Adjust.
5998 (empty()): Remove.
5999 (has_value()): New.
6000 (type()): Adjust.
6001 (_Manager_internal::_S_create(_Storage&, _Args&&...)): New.
6002 (_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise.
6003 (make_any(_Args&&...)): Likewise.
6004 (make_any(initializer_list<_Up>, _Args&&...)): Likewise.
6005 * include/std/optional (in_place_t, in_place): Remove.
6006 (bad_optional_access): Add a comment referring to LEWG 72.
6007 (emplace(_Args&&...)): Constrain.
6008 (has_value()): New.
6009 (reset()): Likewise.
6010 (make_optional(_Args&&...)): Likewise.
6011 (make_optional(initializer_list<_Up>, _Args&&...)): Likewise.
6012 * include/std/utility (in_place_tag): New.
6013 (__in_place, __in_place_type, __in_place_index): Likewise.
6014 (in_place_t, in_place_type_t, in_place_index_t): Likewise.
6015 (in_place(__in_place*)): Likewise.
6016 (in_place(__in_place_type<_Tp>*)): Likewise.
6017 (in_place(__in_place_index<_Idx>*)): Likewise.
6018 * testsuite/20_util/any/assign/1.cc: Adjust.
6019 * testsuite/20_util/any/assign/emplace.cc: New.
6020 * testsuite/20_util/any/assign/self.cc: Adjust.
6021 * testsuite/20_util/any/cons/1.cc: Likewise.
6022 * testsuite/20_util/any/cons/in_place.cc: New.
6023 * testsuite/20_util/any/make_any.cc: Likewise.
6024 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
6025 * testsuite/20_util/any/misc/swap.cc: Likewise.
6026 * testsuite/20_util/any/modifiers/1.cc: Likewise.
6027 * testsuite/20_util/any/requirements.cc: New.
6028 * testsuite/20_util/in_place/requirements.cc: Likewise.
6029 * testsuite/20_util/optional/constexpr/in_place.cc: Adjust.
6030 * testsuite/20_util/optional/in_place.cc: Likewise.
6031 * testsuite/20_util/optional/make_optional.cc: Add tests for
6032 the new overloads of make_optional.
6033
c0d31471
VV
60342016-07-13 Ville Voutilainen <ville.voutilainen@gmail.com>
6035
6036 Implement P0307R2, Making Optional Greater Equal Again.
6037 * include/experimental/optional (_Has_addressof): Fix the comment.
6038 * include/std/optional (_Has_addressof): Likewise.
6039 (operator=(_Up&&)): Constrain.
6040 (operator=(const optional<_Up>&)): Likewise.
6041 (operator=(optional<_Up>&&)): Likewise.
6042 (__optional_relop_t): New.
6043 (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
6044 (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
6045 Constrain and make transparent.
6046 (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
6047 (operator>(const optional<_Tp>&, const optional<_Tp>&)):
6048 Constrain and make transparent.
6049 (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
6050 (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
6051 (operator==(const optional<_Tp>&, const _Tp&): Constrain.
6052 (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
6053 (operator!=(const optional<_Tp>&, _Tp const&)):
6054 Constrain and make transparent.
6055 (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
6056 (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
6057 (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
6058 (operator>(const optional<_Tp>&, const _Tp&)):
6059 Constrain and make transparent.
6060 (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
6061 (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
6062 (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
6063 (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
6064 (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
6065 * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
6066 * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
6067 * testsuite/20_util/optional/relops/1.cc: Likewise.
6068 * testsuite/20_util/optional/relops/2.cc: Likewise.
6069 * testsuite/20_util/optional/relops/3.cc: Likewise.
6070 * testsuite/20_util/optional/relops/4.cc: Likewise.
6071 * testsuite/20_util/optional/requirements.cc: Add tests to verify
6072 that optional's relops are transparent and don't synthesize
6073 operators. Also test that assignment sfinaes.
6074
260d92cd
JW
60752016-07-13 Jonathan Wakely <jwakely@redhat.com>
6076
e383deac
JW
6077 PR libstdc++/71856
6078 * include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty.
6079 * include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS):
6080 Rename to _GLIBCXX_PARALLEL_ASSERTIONS and make default value depend
6081 on _GLIBCXX_ASSERTIONS.
6082 * include/parallel/balanced_quicksort.h: Rename _GLIBCXX_ASSERTIONS.
6083 Include <unistd.h> for sleep.
6084 * include/parallel/losertree.h: Rename _GLIBCXX_ASSERTIONS.
6085 * include/parallel/merge.h: Likewise.
6086 * include/parallel/multiway_merge.h: Likewise.
6087 * include/parallel/partition.h: Likewise.
6088 * include/parallel/queue.h: Likewise.
6089 * include/parallel/sort.h: Likewise.
6090 * testsuite/25_algorithms/headers/algorithm/
6091 parallel_algorithm_assert.cc: New.
6092
17f8dc93
JW
6093 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
6094 (replace(__const_iterator, __const_iterator, initializer_list<C>)):
6095 Forward to different overload.
6096
260d92cd
JW
6097 * include/bits/allocated_ptr.h (__allocated_ptr::_S_raw_ptr): Make
6098 static.
6099
2d60da10
JW
61002016-07-13 Jonathan Wakely <jwakely@redhat.com>
6101
6102 Revert "Add non-const overload of std::string::data()".
6103
05505e9d
VV
61042016-07-13 Ville Voutilainen <ville.voutilainen@gmail.com>
6105
86c0ec1d
VV
6106 Implement P0307R2, Making Optional Greater Equal Again.
6107 * include/experimental/optional (_Has_addressof): Fix the comment.
6108 * include/std/optional (_Has_addressof): Likewise.
6109 (operator=(_Up&&)): Constrain.
6110 (operator=(const optional<_Up>&)): Likewise.
6111 (operator=(optional<_Up>&&)): Likewise.
6112 (__optional_relop_t): New.
6113 (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
6114 (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
6115 Constrain and make transparent.
6116 (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
6117 (operator>(const optional<_Tp>&, const optional<_Tp>&)):
6118 Constrain and make transparent.
6119 (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
6120 (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
6121 (operator==(const optional<_Tp>&, const _Tp&): Constrain.
6122 (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
6123 (operator!=(const optional<_Tp>&, _Tp const&)):
6124 Constrain and make transparent.
6125 (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
6126 (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
6127 (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
6128 (operator>(const optional<_Tp>&, const _Tp&)):
6129 Constrain and make transparent.
6130 (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
6131 (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
6132 (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
6133 (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
6134 (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
6135 * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
6136 * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
6137 * testsuite/20_util/optional/relops/1.cc: Likewise.
6138 * testsuite/20_util/optional/relops/2.cc: Likewise.
6139 * testsuite/20_util/optional/relops/3.cc: Likewise.
6140 * testsuite/20_util/optional/relops/4.cc: Likewise.
6141 * testsuite/20_util/optional/requirements.cc: Add tests to verify
6142 that optional's relops are transparent and don't synthesize
6143 operators. Also test that assignment sfinaes.
6144
ceea48fc
JW
61452016-07-13 Jonathan Wakely <jwakely@redhat.com>
6146
6147 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (_M_c_str):
6148 New function.
6149 (_M_disjunct, basic_string(const basic_string&, size_t)): Use data()
6150 instead of _M_data().
6151 (basic_string(const basic_string&, size_t, size_t, const _Alloc&)):
6152 Likewise.
6153 (append(const basic_string&)): Likewise.
6154 (append(const basic_string&, size_type, size_type)): Likewise.
6155 (assign(const basic_string&, size_type, size_type)): Likewise.
6156 (insert(size_type, const basic_string&)): Likewise.
6157 (insert(size_type, const basic_string&, size_type, size_type)):
6158 Likewise.
6159 (replace(size_type, size_type, const basic_string&, size_type,
6160 size_type)): Likewise.
6161 (replace(__const_iterator, __const_iterator, const basic_string&)):
6162 Likewise.
6163 (c_str(), data()): Use c_str() instead of _M_data().
6164 (data()): Add non-const overload as per LWG 2391 and P0272R1.
6165 (compare(const basic_string&)): Use data() instead of _M_data().
6166 [!_GLIBCXX_USE_CXX11_ABI] (data()): Add non-const overload.
6167 * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI] (_M_mutate):
6168 Pass raw pointers to _S_copy.
6169 (_M_erase, _M_replace_aux): Pass raw pointers to _S_move and
6170 _S_assign.
6171 (find(const _CharT*, size_type, size_type)): Use data instead of
6172 _M_data().
6173 * testsuite/21_strings/basic_string/allocator/char/ext_ptr.cc: New.
6174 * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
6175 * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
6176
17b31c05
JW
61772016-07-12 Jonathan Wakely <jwakely@redhat.com>
6178
7cbadfdc
JW
6179 * libsupc++/new: Remove nothrow sized deletes (LWG 2458).
6180 * doc/xml/manual/intro.xml: Document DR 2458 status.
6181 * doc/html*: Regenerate.
6182
1b24fb4c
JW
6183 * testsuite/20_util/pair/astuple/astuple.cc: Only include <utility>.
6184 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
6185 Only include <array>.
6186 * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
6187 Likewise.
1b1c16e0 6188 * doc/xml/manual/intro.xml: Document LWG 2212 support.
1b24fb4c
JW
6189 * doc/html*: Regenerate.
6190
17b31c05
JW
6191 * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
6192 Add testcase from LWG 2164.
6193
76225d2c
FD
61942016-07-11 François Dumont <fdumont@gcc.gnu.org>
6195
6196 * include/bits/stl_vector.h (push_back(const value_type&)): Forward
6197 to _M_realloc_insert.
6198 (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
6199 (_M_realloc_insert): Declare new function.
6200 (_M_emplace_back_aux): Remove definition.
6201 * include/bits/vector.tcc (emplace_back(_Args...)):
6202 Use _M_realloc_insert.
6203 (insert(const_iterator, const value_type&)): Likewise.
6204 (_M_insert_rval, _M_emplace_aux): Likewise.
6205 (_M_emplace_back_aux): Remove declaration.
6206 (_M_realloc_insert): Define.
6207 * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
6208 Adjust expected results for emplacing an lvalue with reallocation.
6209
435e56fb
VV
62102016-07-10 Ville Voutilainen <ville.voutilainen@gmail.com>
6211
6212 Implement std::optional.
6213 * include/Makefile.am: Add optional to exported headers.
6214 * include/Makefile.in: Likewise.
6215 * include/std/optional: New.
6216 * testsuite/20_util/optional/typedefs.cc: Likewise.
6217 * testsuite/20_util/optional/relops/2.cc: Likewise.
6218 * testsuite/20_util/optional/relops/3.cc: Likewise.
6219 * testsuite/20_util/optional/relops/4.cc: Likewise.
6220 * testsuite/20_util/optional/relops/5.cc: Likewise.
6221 * testsuite/20_util/optional/relops/1.cc: Likewise.
6222 * testsuite/20_util/optional/relops/6.cc: Likewise.
6223 * testsuite/20_util/optional/nullopt.cc: Likewise.
6224 * testsuite/20_util/optional/in_place.cc: Likewise.
6225 * testsuite/20_util/optional/make_optional.cc: Likewise.
6226 * testsuite/20_util/optional/assignment/2.cc: Likewise.
6227 * testsuite/20_util/optional/assignment/3.cc: Likewise.
6228 * testsuite/20_util/optional/assignment/4.cc: Likewise.
6229 * testsuite/20_util/optional/assignment/5.cc: Likewise.
6230 * testsuite/20_util/optional/assignment/1.cc: Likewise.
6231 * testsuite/20_util/optional/assignment/6.cc: Likewise.
6232 * testsuite/20_util/optional/cons/value_neg.cc: Likewise.
6233 * testsuite/20_util/optional/cons/default.cc: Likewise.
6234 * testsuite/20_util/optional/cons/move.cc: Likewise.
6235 * testsuite/20_util/optional/cons/value.cc: Likewise.
6236 * testsuite/20_util/optional/cons/copy.cc: Likewise.
6237 * testsuite/20_util/optional/requirements.cc: Likewise.
6238 * testsuite/20_util/optional/observers/2.cc: Likewise.
6239 * testsuite/20_util/optional/observers/3.cc: Likewise.
6240 * testsuite/20_util/optional/observers/4.cc: Likewise.
6241 * testsuite/20_util/optional/observers/5.cc: Likewise.
6242 * testsuite/20_util/optional/observers/1.cc: Likewise.
6243 * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
6244 * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
6245 * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
6246 * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
6247 * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
6248 * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
6249 * testsuite/20_util/optional/constexpr/nullopt.cc: Likewise.
6250 * testsuite/20_util/optional/constexpr/in_place.cc: Likewise.
6251 * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
6252 * testsuite/20_util/optional/constexpr/cons/default.cc: Likewise.
6253 * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
6254 * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
6255 * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
6256 * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
6257 * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
6258 * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
6259 * testsuite/20_util/optional/swap/1.cc: Likewise.
6260
d81102f4
JW
62612016-07-08 Jonathan Wakely <jwakely@redhat.com>
6262
6263 * testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New.
6264
9fc0faf0
JW
62652016-07-07 Jonathan Wakely <jwakely@redhat.com>
6266
6267 * doc/xml/manual/status_cxx2014.xml: Update LFTS status table.
6268 * doc/html/*: Regenerate.
6269
52e86221
VV
62702016-07-07 Ville Voutilainen <ville.voutilainen@gmail.com>
6271
6272 Implement std::any.
6273 * include/Makefile.am: Add any and c++17_warning.h to exported headers.
6274 * include/Makefile.in: Likewise.
6275 * include/std/any: New.
6276 * testsuite/20_util/any/assign/1.cc: Likewise.
6277 * testsuite/20_util/any/assign/2.cc: Likewise.
6278 * testsuite/20_util/any/assign/self.cc: Likewise.
6279 * testsuite/20_util/any/cons/1.cc: Likewise.
6280 * testsuite/20_util/any/cons/2.cc: Likewise.
6281 * testsuite/20_util/any/cons/aligned.cc: Likewise.
6282 * testsuite/20_util/any/cons/nontrivial.cc: Likewise.
6283 * testsuite/20_util/any/misc/any_cast.cc: Likewise.
6284 * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise.
6285 * testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
6286 * testsuite/20_util/any/misc/swap.cc: Likewise.
6287 * testsuite/20_util/any/modifiers/1.cc: Likewise.
6288 * testsuite/20_util/any/observers/type.cc: Likewise.
6289 * testsuite/20_util/any/typedefs.cc: Likewise.
6290
3042e708
VV
62912016-07-06 Ville Voutilainen <ville.voutilainen@gmail.com>
6292
6293 Add a new header for diagnosing the use of C++17 facilities
6294 in pre-C++17 modes.
6295 * include/bits/c++17_warning.h: New.
6296
6ffe8548
VV
62972016-07-06 Ville Voutilainen <ville.voutilainen@gmail.com>
6298
6299 Implement LWG 2451, optional<T> should 'forward' T's
6300 implicit conversions.
6301 * include/experimental/optional (__is_optional_impl, __is_optional):
6302 New.
6303 (optional()): Make constexpr and default.
6304 (optional(_Up&&), optional(const optional<_Up>&),
6305 optional(optional<_Up>&& __t): New.
6306 (operator=(_Up&&)): Constrain.
6307 (operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New.
6308 * testsuite/experimental/optional/cons/value.cc:
6309 Add tests for the functionality added by LWG 2451.
6310 * testsuite/experimental/optional/cons/value_neg.cc: New.
6311
7d4f48b5
VV
63122016-07-05 Ville Voutilainen <ville.voutilainen@gmail.com>
6313
6314 Implement LWG 2509,
6315 any_cast doesn't work with rvalue reference targets and cannot
6316 move with a value target.
6317 * include/experimental/any (any(_ValueType&&)): Constrain and
6318 add an overload that doesn't forward.
6319 (any_cast(any&&)): Constrain and add an overload that moves.
6320 * testsuite/experimental/any/misc/any_cast.cc: Add tests for
6321 the functionality added by LWG 2509.
6322
097e8994
FD
63232016-07-04 François Dumont <fdumont@gcc.gnu.org>
6324
6325 * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
6326 New test.
6327 * testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New
6328 test.
6329
9958c7eb
JW
63302016-07-04 Jonathan Wakely <jwakely@redhat.com>
6331
6332 * include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)):
6333 Define inline. Forward to _M_emplace_aux.
6334 (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
6335 (_M_insert_rval, _M_emplace_aux): Declare new functions.
6336 (_Temporary_value): New RAII type using allocator to construct/destroy.
6337 (_S_insert_aux_assign): Remove.
6338 (_M_insert_aux): Make non-variadic.
6339 * include/bits/vector.tcc (insert(const_iterator, const value_type&)):
6340 Use _Temporary_value.
6341 (emplace(const_iterator, _Args&&...)): Remove definition.
6342 (_M_insert_rval, _M_emplace_aux): Define.
6343 (_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign.
6344 (_M_fill_insert): Use _Temporary_value.
6345 * testsuite/23_containers/vector/allocator/construction.cc: New test.
6346 * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
6347 Adjust expected results for emplacing an lvalue with reallocation.
6348 * testsuite/23_containers/vector/check_construct_destroy.cc: Adjust
6349 expected results to account for construction/destruction of temporary
6350 using allocator.
6351 * testsuite/backward/hash_set/check_construct_destroy.cc: Likewise.
6352
e12880f9
VV
63532016-07-04 Ville Voutilainen <ville.voutilainen@gmail.com>
6354
6355 PR libstdc++/71313
6356 * src/filesystem/ops.cc (remove_all(const path&, error_code&)):
6357 Call remove_all for children of a directory.
6358 * testsuite/experimental/filesystem/operations/create_directories.cc:
6359 Adjust.
6360
6c539f2e
FD
63612016-07-02 François Dumont <fdumont@gcc.gnu.org>
6362
6363 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust
6364 dg-error line numbers.
6365 * testsuite/23_containers/array/tuple_interface/
6366 tuple_element_debug_neg.cc: Likewise.
6367 * testsuite/25_algorithms/lexicographical_compare/debug/
6368 irreflexive_neg.cc: Remove.
6369
72fb6bae
TP
63702016-06-30 Thomas Preud'homme <thomas.preudhomme@arm.com>
6371
6372 * testsuite/29_atomics/atomic/65913.cc: Require atomic-builtins rather
6373 than specific target.
6374
dc448fa0
FD
63752016-06-27 François Dumont <fdumont@gcc.gnu.org>
6376
6377 PR libstdc++/71640
6378 * include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert
6379 friend declaration.
6380
e615c24c
FD
63812016-06-23 François Dumont <fdumont@gcc.gnu.org>
6382
6383 * include/debug/array (array<>::swap): Fix noexcept qualificaton for
6384 zero-size array.
6385
0609abda
TS
63862016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
6387
6388 * configure.host: Remove mep-* support.
6389
8466af06
TS
63902016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
6391
6392 * configure: Regenerate.
6393 * configure.host: Remove support for knetbsd.
6394 * crossconfig.m4: Likewise.
6395
29dbb034
FD
63962016-06-20 François Dumont <fdumont@gcc.gnu.org>
6397
6398 PR libstdc++/71181
6399 * include/tr1/hashtable_policy.h
6400 (_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator
6401 dereferenceable to avoid check on lower_bound result.
6402 (_Prime_rehash_policy::_M_bkt_for_elements): Call latter.
6403 (_Prime_rehash_policy::_M_need_rehash): Likewise.
6404 * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
6405 Always return a value greater than input value. Set _M_next_resize to
6406 max value when reaching highest prime number.
6407 * src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel
6408 being now useless.
6409 * testsuite/23_containers/unordered_set/hash_policy/71181.cc: New.
6410 * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc
6411 (test02): New.
6412 * testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New.
6413 * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
6414 Fix indentation.
6415
3ebacabd
JW
64162016-06-17 Jonathan Wakely <jwakely@redhat.com>
6417
6418 PR libstdc++/71545
6419 * include/bits/stl_algobase.h (lower_bound, lexicographical_compare):
6420 Remove irreflexive checks.
6421 * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
6422 binary_search): Likewise.
6423 * testsuite/25_algorithms/equal_range/partitioned.cc: New test.
6424 * testsuite/25_algorithms/lexicographical_compare/71545.cc: New test.
6425 * testsuite/25_algorithms/lower_bound/partitioned.cc: New test.
6426 * testsuite/25_algorithms/upper_bound/partitioned.cc: New test.
6427 * testsuite/util/testsuite_iterators.h (__gnu_test::test_container):
6428 Add constructor from array.
6429
bd2ee798
FD
64302016-06-16 François Dumont <fdumont@gcc.gnu.org>
6431
6432 * include/debug/debug.h
6433 (__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty)
6434 (__glibcxx_requires_subscript): Move...
6435 * include/debug/assertions.h: ...here and add __builtin_expect.
6436 (_GLIBCXX_DEBUG_ONLY): Remove ; value.
6437 * include/bits/stl_deque.h
6438 (std::deque<>::operator[]): Add __glibcxx_requires_subscript check.
6439 (std::deque<>::front()): Add __glibcxx_requires_nonempty check.
6440 (std::deque<>::back()): Likewise.
6441 (std::deque<>::pop_front()): Likewise.
6442 (std::deque<>::pop_back()): Likewise.
6443 (std::deque<>::swap(deque&)): Add allocator check.
6444 * include/bits/stl_vector.h
6445 (std::vector<>::operator[]): Add __glibcxx_requires_subscript check.
6446 (std::vector<>::front()): Add __glibcxx_requires_nonempty check.
6447 (std::vector<>::back()): Likewise.
6448 (std::vector<>::pop_back()): Likewise.
6449 (std::vector<>::swap(vector&)): Add allocator check.
6450
6b9539e2
DK
64512016-06-16 Daniel Kruegler <daniel.kruegler@gmail.com>
6452
6453 Provide swappable traits (p0185r1)
6454 * include/std/type_traits (is_swappable, is_nothrow_swappable,
6455 is_swappable_with, is_nothrow_swappable_with, is_swappable_v,
6456 is_nothrow_swappable_v, is_swappable_with_v,
6457 is_nothrow_swappable_with_v): New.
6458 * include/bits/stl_pair.h: Use it as per p0185r1.
6459 * include/bits/stl_queue.h: Likewise.
6460 * include/bits/stl_stack.h: Likewise.
6461 * include/bits/unique_ptr.h: Likewise.
6462 * include/std/tuple: Likewise.
6463 * include/std/array: Likewise. Fix zero-size member swap.
6464 * include/bits/hashtable.h: Use __and_.
6465 * testsuite/20_util/is_nothrow_swappable/requirements/
6466 explicit_instantiation.cc: Change test options to std=gnu++17.
6467 * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
6468 Likewise.
6469 * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
6470 * testsuite/20_util/is_swappable/requirements/
6471 explicit_instantiation.cc: Likewise.
6472 * testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise.
6473 * testsuite/20_util/is_swappable/value.cc: Likewise.
6474 * testsuite/20_util/is_nothrow_swappable/requirements/
6475 explicit_instantiation_ext.cc: New.
6476 * testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc:
6477 New.
6478 * testsuite/20_util/is_nothrow_swappable/value.h: New.
6479 * testsuite/20_util/is_nothrow_swappable/value_ext.cc: New.
6480 * testsuite/20_util/is_nothrow_swappable_with/requirements/
6481 explicit_instantiation.cc: New.
6482 * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
6483 New.
6484 * testsuite/20_util/is_nothrow_swappable_with/value.cc: New.
6485 * testsuite/20_util/is_swappable/requirements/
6486 explicit_instantiation_ext.cc: New.
6487 * testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New.
6488 * testsuite/20_util/is_swappable/value.h: New.
6489 * testsuite/20_util/is_swappable/value_ext.cc: New.
6490 * testsuite/20_util/is_swappable_with/requirements/
6491 explicit_instantiation.cc: New.
6492 * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New.
6493 * testsuite/20_util/is_swappable_with/value.cc: New.
6494 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
6495 dg-error line numbers.
6496 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
6497 Likewise.
6498
0ae207e9
JW
64992016-06-16 Jonathan Wakely <jwakely@redhat.com>
6500
33ac58d5
JW
6501 * include/std/array: Remove trailing whitespace.
6502 * include/std/atomic: Likewise.
6503 * include/std/bitset: Likewise.
6504 * include/std/chrono: Likewise.
6505 * include/std/complex: Likewise.
6506 * include/std/condition_variable: Likewise.
6507 * include/std/fstream: Likewise.
6508 * include/std/functional: Likewise.
6509 * include/std/future: Likewise.
6510 * include/std/iomanip: Likewise.
6511 * include/std/iosfwd: Likewise.
6512 * include/std/istream: Likewise.
6513 * include/std/limits: Likewise.
6514 * include/std/ratio: Likewise.
6515 * include/std/scoped_allocator: Likewise.
6516 * include/std/sstream: Likewise.
6517 * include/std/stdexcept: Likewise.
6518 * include/std/string: Likewise.
6519 * include/std/system_error: Likewise.
6520 * include/std/thread: Likewise.
6521 * include/std/tuple: Likewise.
6522 * include/std/type_traits: Likewise.
6523 * include/std/utility: Likewise.
6524 * include/std/valarray: Likewise.
6525 * include/std/vector: Likewise.
6526
0ae207e9
JW
6527 * include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
6528 new overloaded functions.
6529 * include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
6530 to avoid creating a redundant temporary.
6531 * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
6532 test.
6533
d7e16fc5
FD
65342016-06-15 François Dumont <fdumont@gcc.gnu.org>
6535
6536 * include/bits/stl_deque.h
6537 (std::deque<>::operator=): Call _M_assign_aux.
6538 (std::deque<>::assign(initializer_list<>)): Likewise.
6539 (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
6540 (std::deque<>::insert(const_iterator, initializer_list<>)):
6541 Call _M_range_insert_aux.
6542 (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
6543 Likewise.
6544 (std::deque<>::_M_fill_assign): Call _M_fill_insert.
6545 (std::deque<>::_M_move_assign2): Call _M_assign_aux.
6546 * include/bits/deque.tcc
6547 (std::deque<>::operator=): Call _M_range_insert_aux.
6548 (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
6549 Likewise.
6550 * include/bits/stl_vector.h
6551 (std::vector<>::operator=): Call _M_assign_aux.
6552 (std::vector<>::assign(initializer_list<>)): Likewise.
6553 (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
6554 (std::vector<>::insert(const_iterator, initializer_list<>)):
6555 Call _M_range_insert.
6556 * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.
6557
373c0095
FD
65582016-06-07 François Dumont <fdumont@gcc.gnu.org>
6559
6560 * include/std/tuple (_Head_base<>): Default specialization condition at
6561 type declaration.
6562
dbc6221f
VV
65632016-06-06 Ville Voutilainen <ville.voutilainen@gmail.com>
6564
6565 Support allocators in tuples of zero size.
6566 * include/std/tuple (tuple<>::tuple(),
6567 tuple<>::tuple(allocator_arg_t, const _Alloc&),
6568 tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
6569 * testsuite/20_util/tuple/cons/allocators.cc: Adjust.
6570
94229fb6
JW
65712016-06-06 Jonathan Wakely <jwakely@redhat.com>
6572
6573 PR libstdc++/71320
6574 * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
6575 Add or remove permissions according to perms argument.
6576 * testsuite/experimental/filesystem/operations/permissions.cc: New
6577 test.
6578
7a667453
VV
65792016-06-05 Ville Voutilainen <ville.voutilainen@gmail.com>
6580
6581 Protect allocator-overloads of tuple-from-tuple constructors
6582 from cases that would create dangling references.
6583 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
6584 const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
6585 tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
6586 * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.
6587
4acc3634
GP
65882016-05-29 Gerald Pfeifer <gerald@pfeifer.com>
6589
6590 * doc/xml/manual/backwards_compatibility.xml: Adjust
6591 lists.debian.org link to https.
6592 * doc/html/manual/backwards.html: Regenerate.
6593
9020909e
JW
65942016-05-27 Jonathan Wakely <jwakely@redhat.com>
6595
6596 * doc/xml/manual/abi.xml: Adjust URL to use https.
6597 * doc/html/manual/*: Regenerate.
6598
b7021006
VV
65992016-05-27 Ville Voutilainen <ville.voutilainen@gmail.com>
6600
6601 PR libstdc++/66338
6602 * include/std/tuple (_TMC): Add a check for _NotSameTuple.
6603 * include/std/tuple (tuple(_UElements&&...)): Remove the separate
6604 check for _NotSameTuple.
6605 * include/std/tuple (_TMCT): New.
6606 * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it.
6607 * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise.
6608 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
6609 const tuple<_UElements...>&)): Likewise.
6610 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
6611 tuple<_UElements...>&&)): Likewise.
6612 * testsuite/20_util/tuple/cons/66338.cc: New.
6613
834f4c43
JW
66142016-05-25 Jonathan Wakely <jwakely@redhat.com>
6615
c42d2288
JW
6616 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
6617 * configure: Regenerate.
6618 * config.h.in: Regenerate.
6619
834f4c43
JW
6620 * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it.
6621 * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt):
6622 Remove const qualification on function. Replace
6623 _GLIBCXX14_USE_CONSTEXPR on automatic variables with const.
6624 (_Power2_rehash_policy::_M_need_rehash): Remove const qualification.
6625 (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier.
6626
732eb076
FD
66272016-05-24 François Dumont <fdumont@gcc.gnu.org>
6628
6629 * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
6630 * include/bits/hashtable_policy.h
6631 (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
6632 having load factor management.
6633 (_Mask_range_hashing): New.
6634 (__clp2): New.
6635 (_Power2_rehash_policy): New.
6636 (_Inserts<>): Remove last template parameter, _Unique_keys, so that
6637 partial specializations only depend on whether iterators are constant
6638 or not.
6639 * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
6640 test new hash policy.
6641 * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
6642 Likewise.
6643 * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
6644 Likewise.
6645 * testsuite/23_containers/unordered_set/insert/hash_policy.cc:
6646 Likewise.
6647 * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
6648 Likewise.
6649 * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
6650 New.
6651 * testsuite/performance/23_containers/insert/54075.cc: Add benchmark
6652 using the new hash policy.
6653 * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
6654
8be062c6
JW
66552016-05-24 Jonathan Wakely <jwakely@redhat.com>
6656
6657 * include/bits/stl_queue.h (priority_queue::value_compare): Define.
6658
447caf82
FD
66592016-05-23 François Dumont <fdumont@gcc.gnu.org>
6660
6661 * include/debug/safe_iterator.h
6662 (_Safe_iterator<>::operator->()): Implement using underlying iterator
6663 operator ->.
6664 * include/debug/safe_local_iterator.h
6665 (_Safe_local_iterator<>::operator->()): Likewise.
6666
11f8114b
TP
66672016-05-20 Thomas Preud'homme <thomas.preudhomme@arm.com>
6668
6669 * testsuite/experimental/memory_resource/1.cc: Add required argument
6670 to dg-require-atomic-builtins.
6671
541a9b10
JW
66722016-05-13 Jonathan Wakely <jwakely@redhat.com>
6673
6674 PR libstdc++/71073
6675 * include/debug/bitset: Add #pragma GCC system_header.
6676 * include/debug/deque: Likewise.
6677 * include/debug/list: Likewise.
6678 * include/debug/map: Likewise.
6679 * include/debug/set: Likewise.
6680 * include/debug/string: Likewise.
6681 * include/debug/unordered_map: Likewise.
6682 * include/debug/unordered_set: Likewise.
6683 * include/debug/vector: Likewise.
6684 * include/debug/functions.h: Adjust whitespace.
6685
068b220e
JW
66862016-05-12 Jonathan Wakely <jwakely@redhat.com>
6687
6688 PR libstdc++/71081
6689 * testsuite/experimental/memory_resource/1.cc: Require atomics.
6690
3d73ae6e
JW
66912016-05-11 Jonathan Wakely <jwakely@redhat.com>
6692
6693 PR libstdc++/71049
6694 * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
6695 exception constructors with __sso_string parameters.
6696
d7187f9e
JW
66972016-05-10 Jonathan Wakely <jwakely@redhat.com>
6698
7f99d40a
JW
6699 * include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
6700 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
6701 Test begin and end functions.
6702 * testsuite/experimental/filesystem/iterators/
6703 recursive_directory_iterator.cc: Likewise.
6704
6fe673ad
JW
6705 PR libstdc++/71038
6706 * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
6707 * testsuite/experimental/filesystem/operations/copy_file.cc: New test.
6708
77a87b2a
JW
6709 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
6710 Overload operator* to move from rvalues.
6711
f9a39467
JW
6712 PR libstdc++/71036
6713 * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
6714 * testsuite/experimental/filesystem/operations/create_directory.cc:
6715 New test.
6716
6f0800d4
JW
6717 PR libstdc++/71037
6718 * src/filesystem/ops.cc (canonical(const path&, const path&)): Add
6719 base path to exception.
6720 * testsuite/experimental/filesystem/operations/canonical.cc: Test
6721 paths contained in exception.
6722
f10b2e1c
JW
6723 * testsuite/experimental/type_erased_allocator/2.cc: Remove unused
6724 using declaration.
6725
d7187f9e
JW
6726 PR libstdc++/71005
6727 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
6728 New type.
6729 (directory_iterator::operator++(int)): Return proxy.
6730 (recursive_directory_iterator::operator++(int)): Likewise.
6731 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
6732 Test post-increment.
6733 * testsuite/experimental/filesystem/iterators/
6734 recursive_directory_iterator.cc: Likewise.
6735
7972e246
JW
67362016-05-09 Jonathan Wakely <jwakely@redhat.com>
6737
6738 PR libstdc++/71004
6739 * testsuite/experimental/filesystem/iterators/
6740 recursive_directory_iterator.cc: Fix test02 to not call member
6741 functions on invalid iterator, and use VERIFY not assert.
6742
fb334765
VV
67432016-05-09 Ville Voutilainen <ville.voutilainen@gmail.com>
6744
6745 Avoid endless run-time recursion for copying single-element
6746 tuples where the element type is by-value constructible
6747 from any type.
6748 * include/std/tuple (_NotSameTuple): New.
6749 * include/std/tuple (tuple(_UElements&&...): Use it.
6750 * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
6751
e4cce0ce
JW
67522016-05-09 Jonathan Wakely <jwakely@redhat.com>
6753
6754 PR libstdc++/71004
6755 * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
6756 Initialize scalar member variables in default constructor.
6757 * testsuite/experimental/filesystem/iterators/
d7187f9e 6758 recursive_directory_iterator.cc: Test default construction.
e4cce0ce 6759
40436d81
RO
67602016-05-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
6761
6762 * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
6763
f5c40ce2
JW
67642016-05-05 Jonathan Wakely <jwakely@redhat.com>
6765
6766 * testsuite/experimental/filesystem/path/native/string.cc: Add
6767 dg-require-filesystem-ts directive.
6768
d9cb3e75
JW
67692016-05-04 Jonathan Wakely <jwakely@redhat.com>
6770
6771 PR libstdc++/70940
6772 * include/experimental/memory_resource
6773 (__resource_adaptor_imp::do_allocate): Do not default-construct
6774 rebound allocator.
6775 (__resource_adaptor_imp::do_deallocate): Likewise. Use
6776 allocator_traits to get pointer type.
6777 (__null_memory_resource::do_allocate): Remove unused parameters.
6778 (__null_memory_resource::do_deallocate): Likewise.
6779 (__null_memory_resource::do_is_equal): Likewise. Add return statement.
6780 * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
6781 * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
6782 move to ...
6783 * testsuite/experimental/memory_resource/1.cc: Here.
6784 * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
6785 * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
6786
f92ab29f
CG
67872016-04-29 Chris Gregory <czipperz@gmail.com>
6788
6789 * config/*: Remove trailing whitespace.
6790 * src/*: Likewise.
6791 * testsuite/tr1/*: Likewise.
6792 * testsuite/util/*: Likewise.
6793
272b2ce4
JW
67942016-04-28 Jonathan Wakely <jwakely@redhat.com>
6795
9f9eb84e
JW
6796 PR libstdc++/70766
6797 * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
6798 __addressof.
6799 * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
6800 Likewise.
6801 * include/std/atomic (atomic<_Tp>): Likewise.
6802 * include/std/shared_mutex (shared_lock): Likewise.
6803 * testsuite/24_iterators/istream_iterator/70766.cc: New test.
6804 * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
6805 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
6806 * testsuite/29_atomics/atomic/70766.cc: New test.
6807 * testsuite/30_threads/shared_lock/70766.cc: New test.
6808
272b2ce4
JW
6809 * include/bits/hashtable_policy.h (__detail::_Insert_base,
6810 __detail::_Insert): Improve comments.
6811
45e20696
JW
68122016-04-27 Jonathan Wakely <jwakely@redhat.com>
6813
6814 PR libstdc++/70767
6815 * include/std/limits: Update comments about DRs.
6816 (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
6817 numeric_limits<const volatile _Tp>): Define unconditionally.
6818
a635cdb2
JW
68192016-04-24 Jonathan Wakely <jwakely@redhat.com>
6820
6821 PR libstdc++/70762
6822 * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
6823 static counter to return a different path on every call.
6824
216f7526
TS
68252016-04-22 Tim Shen <timshen@google.com>
6826
6827 PR libstdc++/70745
6828 * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
6829 Fix the match_not_bow and match_not_eow behavior.
6830 * testsuite/28_regex/regression.cc: Add testcase.
6831
a1e1ec76
JW
68322016-04-20 Jonathan Wakely <jwakely@redhat.com>
6833
6834 PR libstdc++/69703
6835 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
6836 __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
6837
9c476ad4
JW
68382016-04-19 Jonathan Wakely <jwakely@redhat.com>
6839
29ca91f7 6840 PR libstdc++/69703
a1e1ec76 6841 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
29ca91f7
JW
6842 Override endianness bit in mode.
6843 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
6844 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
6845 that little_endian mode is ignored.
6846 * testsuite/experimental/filesystem/path/native/string.cc: New test.
6847
14905251
JW
6848 PR libstdc++/70609
6849 * src/filesystem/ops.cc (close_fd): New function.
6850 (do_copy_file): Set permissions before copying file contents. Check
6851 result of closing file descriptors. Don't copy streambuf when file
6852 is empty.
6853 (copy(const path&, const path&, copy_options, error_code&)): Use
6854 lstat for source file when copy_symlinks is set.
6855 * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
6856
9c476ad4
JW
6857 * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
6858 operator~ operator&=, operator|=, operator^=): Add noexcept to
6859 overloaded operators for copy_options, perms and directory_options.
6860 * src/filesystem/ops.cc (make_file_type, make_file_status,
6861 is_not_found_errno, file_time): Add noexcept.
6862
d855ad89
ESR
68632016-04-19 Edward Smith-Rowland <3dw4rd@verizon.net>
6864
6865 * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
6866
8dc1e574
JW
68672016-04-18 Jonathan Wakely <jwakely@redhat.com>
6868
0cded43d
JW
6869 PR libstdc++/41759
6870 * include/bits/random.h: Reword static assertion messages to state
6871 positive conditions.
6872 * include/bits/random.tcc: Likewise.
6873 * include/bits/uniform_int_dist.h: Likewise.
6874 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
6875 patterns.
6876
90751aa7
JW
6877 * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
6878
351a5f81
JW
6879 * config/cpu/sh/atomicity.h: Fix typo in comment.
6880
b05cf382
JW
6881 PR libstdc++/70294
6882 * include/std/thread (operator<, operator==): Move definitions to
6883 namespace-scope.
6884 * testsuite/30_threads/thread/id/70294.cc: New test.
6885
4ed6e524
JW
6886 * testsuite/18_support/bad_exception/23591_thread-1.c: Add
6887 -Wno-pedantic to dg-options.
6888 * testsuite/20_util/align/2.cc: Use type as operand of alignof.
6889 * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
6890 to dg-options.
6891 * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
6892 Remove extra semi-colon.
6893 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
6894 Always supply second argument to static_assert.
6895 * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
6896 semi-colon.
6897 * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
6898 dg-options.
6899 * testsuite/26_numerics/complex/literals/values.cc: Likewise.
6900 * testsuite/29_atomics/atomic/60695.cc: Likewise.
6901 * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
6902 alignof when operand is an object not a type.
6903 * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
6904 * testsuite/decimal/make-decimal.cc: Likewise.
6905 * testsuite/experimental/type_traits/value.cc: Always supply second
6906 argument to static_assert.
6907 * testsuite/util/testsuite_common_types.h: Use __extension__ for
6908 __int128 types.
6909
abb6e0a1
JW
6910 * testsuite/experimental/type_erased_allocator/1.cc: Don't include
6911 internal header.
6912 * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
6913 * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
6914 * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
6915 Likewise. Add licence and change to compile-only test.
6916
6b6147dd
JW
6917 * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
6918 unused parameter.
6919 * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
6920
8dc1e574
JW
6921 * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
6922 warnings.
6923
80dbaf98
ESR
69242016-04-17 Edward Smith-Rowland <3dw4rd@verizon.net>
6925
6926 * include/bits/specfun.h: Trivial comment misspelling.
6927
9f285ccb
JM
69282016-04-14 Jason Merrill <jason@redhat.com>
6929
6930 Revert Jonathan's empty ABI change from yesterday.
6931
342fac95
MS
69322016-04-13 Martin Sebor <msebor@redhat.com>
6933
6934 PR c++/69517
6935 * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
6936 upper bound is positive.
6937
a6297ab5
JW
69382016-04-13 Jonathan Wakely <jwakely@redhat.com>
6939
6940 * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
6941 _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
6942 * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
6943 of functions taking empty structs by value. Add a template parameter
6944 to overloads without hints. Rename overloads with hints to
6945 _M_emplace_hint.
6946 (_Hashtable::_M_erase(true_type, const_iterator),
6947 _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
6948 by reordering parameters.
6949 * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
6950 _M_emplace_hint instead of _M_emplace.
6951 * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
6952 shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
6953 * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
6954 __shared_ptr): Likewise.
6955 * include/bits/stl_algo.h (replace_if): Likewise.
6956 * include/bits/stl_pair.h (piecewise_construct_t,
6957 piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
6958 * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
6959 __uses_alloc0): Likewise.
6960 * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
6961 * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
6962 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
6963 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
6964 * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
6965 * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
6966 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
6967
0c39f36d
ESR
69682016-04-12 Edward Smith-Rowland <3dw4rd@verizon.net>
6969
6970 Document C++17/TR29124 C++ Special Math Functions.
6971 * include/bits/specfun.h: Add Doxygen markup.
6972
6da8b931
JW
69732016-04-07 Jonathan Wakely <jwakely@redhat.com>
6974
6975 * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
6976
49a52ebc
EB
69772016-04-06 Eric Botcazou <ebotcazou@adacore.com>
6978
6979 * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
6980 * src/Makefile.in: Regenerate.
6981
87cec93e
JW
69822016-04-05 Jonathan Wakely <jwakely@redhat.com>
6983
d2aee115
JW
6984 PR libstdc++/70554
6985 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
6986 __atomic_fetch_add for bool.
6987 * configure: Regenerate.
6988
d5ec69f3
JW
6989 * testsuite/30_threads/thread/70503.cc: Require -static to work.
6990
87cec93e
JW
6991 PR libstdc++/70503
6992 * src/c++11/thread.cc (execute_native_thread_routine,
6993 execute_native_thread_routine_compat): Give internal linkage.
6994 * testsuite/30_threads/thread/70503.cc: New test.
6995
7b3318c4
VV
69962016-04-05 Ville Voutilainen <ville.voutilainen@gmail.com>
6997
6998 PR libstdc++/70437
6999 * include/bits/stl_pair.h (_ConstructiblePair,
7000 _ImplicitlyConvertiblePair, _MoveConstructiblePair,
7001 _ImplicitlyMoveConvertiblePair): Add shortcut conditions
7002 for same-type cases.
7003 * testsuite/20_util/pair/70437.cc: New.
7004
00e6c25a
JW
70052016-03-24 Jonathan Wakely <jwakely@redhat.com>
7006
7007 PR libstdc++/69945
7008 * config/abi/pre/gnu.ver: Add new symbol.
7009 * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
7010 * testsuite/18_support/free_eh_pool.cc: New test.
7011
bfd84e6b
BE
70122016-03-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
7013
7014 * include/Makefile.am (install-freestanding-headers): Add
7015 concept_check.h and move.h to the installed headers.
7016 * include/Makefile.in: Regenerated.
7017 * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
7018 freestanding implementations.
7019 * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
7020 that this macro has no effect for freestanding implementations.
7021 * doc/html/manual/using_macros.html: Likewise.
7022
86715b09
JW
70232016-02-24 Jonathan Wakely <jwakely@redhat.com>
7024
7025 PR libstdc++/69939
7026 * include/experimental/tuple (__apply_impl): Qualify get and forward.
7027
9aee022e
JW
70282016-02-23 Jonathan Wakely <jwakely@redhat.com>
7029
be9967e8
JW
7030 * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
7031 * doc/html/*: Regenerate.
7032
9aee022e
JW
7033 PR libstdc++/69893
7034 * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
7035 exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
7036 llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
7037 nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
7038 trunc) [__cplusplus >= 201103L]: Import from namespace std.
7039 (fabs) [__cplusplus < 201103L]: Import from namespace std.
7040 * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
7041 Likewise.
7042 * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
7043 namespace before including TR1 headers.
7044 * testsuite/tr1/headers/c++200x/math.cc: New test.
7045
5f6dd593
BE
70462016-02-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
7047
7048 PR libstdc++/69881
7049 * include/c_global/cstdarg: Undefine __need___va_list.
7050 * include/c_global/cstddef: Undefine all kinds of __need_*.
7051
244901a5
TS
70522016-02-16 Tim Shen <timshen@google.com>
7053
7054 PR libstdc++/69794
7055 * include/bits/regex_scanner.h: Add different special character
7056 sets for grep and egrep regex.
7057 * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
7058 * testsuite/28_regex/regression.cc: Add new testcase.
7059
cc07da33
JW
70602016-02-08 Jonathan Wakely <jwakely@redhat.com>
7061
2158532f
JW
7062 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
7063 added 'constexpr' in previous commit.
7064 * configure: Regenerate.
7065
cc07da33
JW
7066 PR libstdc++/48891
7067 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
7068 checks for all targets except *-*-solaris2.* and ensure we find the
7069 libc math.h header not our own.
7070 * configure: Regenerate.
7071
acc04646
DV
70722016-02-05 Dominik Vogt <vogt@linux.vnet.ibm.com>
7073
7074 * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
7075 New file. Copied over from s390-linux-gnu.
7076
dbcda3ee
JW
70772016-02-04 Jonathan Wakely <jwakely@redhat.com>
7078
3555173f
JW
7079 PR libstdc++/69626
7080 * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
7081 with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
7082 * config.h.in: Regenerate.
7083 * configure: Regenerate.
7084 * testsuite/21_strings/c_strings/char/69626.cc: New.
7085
15ebf379
JW
7086 * doc/html/index.html: Regenerate.
7087
dbcda3ee
JW
7088 * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
7089 * doc/xml/manual/spine.xml: Update copyright years and author blurb.
7090 * doc/html/*: Regenerate.
7091
571512d5
BE
70922016-02-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
7093
7094 PR libstdc++/69581
7095 * include/c_compatibility/math.h: Move header guards.
7096 * include/c_compatibility/stdlib.h: Likewise.
7097
f597d5f7
JW
70982016-01-29 Jonathan Wakely <jwakely@redhat.com>
7099
7100 PR libstdc++/69506
7101 * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
7102
69b0daeb
JDA
71032016-01-28 John David Anglin <danglin@gcc.gnu.org>
7104
7105 PR libstdc++/69450
7106 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
7107 isinf and isnan functions into two independent checks. Check on hpux.
7108 * config.h.in: Regenerate.
7109 * configure: Regenerate.
7110 * include/c_global/cmath (isinf(double), isnan(double)): Use
7111 _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
7112 respectively.
7113
8dc781e4
JJ
71142016-01-27 Jakub Jelinek <jakub@redhat.com>
7115
7116 * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
7117
bae87f7f
JW
71182016-01-27 Jonathan Wakely <jwakely@redhat.com>
7119
7120 PR libstdc++/69295
7121 * testsuite/ext/special_functions/hyperg/check_value.cc: Use
7122 -ffp-contract=off, and -ffloat-store to disable excess precision.
7123 * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
7124 -ffp-contract=off.
7125
f1d591e8
JW
71262016-01-26 Jonathan Wakely <jwakely@redhat.com>
7127
7128 PR libstdc++/69478
7129 * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
7130 random_access_iterator_tag>): Check is_move_assignable when moving.
7131 (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
7132 Likewise.
7133 * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
7134 * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
7135 * testsuite/25_algorithms/move/69478.cc: New.
7136 * testsuite/25_algorithms/move_backward/69478.cc: new.
7137
8964d2a0
AP
71382016-01-26 Andris Pavenis <andris.pavenis@iki.fi>
7139
7140 * include/c_compatibility/stdlib.h: Include wide character related
7141 definitions only when they are available in cstdlib.
7142
2944621e
JW
71432016-01-25 Jonathan Wakely <jwakely@redhat.com>
7144
7145 PR libstdc++/69464
7146 * include/Makefile.am: Add new header.
7147 * include/Makefile.in: Regenerate.
7148 * include/bits/random.h (uniform_int_distribution): Move to
7149 bits/uniform_int_dist.h.
7150 * include/bits/random.tcc (uniform_int_distribution::operator(),
7151 uniform_int_distribution::__generate_impl): Likewise.
7152 * include/bits/uniform_int_dist.h: New header.
7153 * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
7154 <bits/uniform_int_dist.h> instead of <random>.
7155 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
7156 move_iterators/1.cc: Include correct header for uninitialized_copy.
7157 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
7158 move_iterators/1.cc: Likewise.
7159 * testsuite/25_algorithms/nth_element/58800.cc: Include correct
7160 header for vector.
7161 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
7162
3676c087
JDA
71632016-01-23 John David Anglin <danglin@gcc.gnu.org>
7164
7165 PR libstdc++/69446
7166 * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
7167
02dc2419
ESR
71682016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net>
7169
7170 TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
7171 * include/c_compatibility/math.h: Import the TR29124 functions
7172 into the global namespace.
7173 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
7174 xfail and make compile-only.
7175 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
7176 * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
7177 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
7178 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
7179 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
7180 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
7181 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
7182 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
7183 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
7184 * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
7185 * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
7186 * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
7187 * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
7188 * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
7189 * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
7190 * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
7191 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
7192 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
7193 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
7194 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
7195
350fe282
JW
71962016-01-22 Jonathan Wakely <jwakely@redhat.com>
7197
d1fb377c
JW
7198 PR libstdc++/69116
7199 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
7200 define result_type for types which can be safely used with valarrays.
7201 * testsuite/26_numerics/valarray/69116.cc: New.
7202
350fe282
JW
7203 PR libstdc++/69413
7204 * config/os/gnu-linux/os_defines.h: Define
7205 _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
7206 * include/c_global/cmath (isinf, isnan): Check it.
7207 * doc/xml/manual/internals.xml: Document it.
7208 * doc/html/*: Regenerate.
7209
ab56cbed
JW
72102016-01-21 Jonathan Wakely <jwakely@redhat.com>
7211
7212 PR libstdc++/69406
7213 * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
7214 * include/ext/type_traits.h: Likewise.
7215 * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
7216 for presence of C headers.
7217 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
7218 dg-error line number.
7219 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
7220 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
7221 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
7222
7e10bcfa
TR
72232016-01-20 Torvald Riegel <triegel@redhat.com>
7224
7225 PR libstdc++/69310
7226 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
7227
eac437bf
JW
72282016-01-20 Jonathan Wakely <jwakely@redhat.com>
7229
3f93466a
JW
7230 PR libstdc++/60401
7231 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
7232 copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
7233 lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
7234 nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
7235 tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
7236 Add using declarations.
7237 * testsuite/26_numerics/headers/cmath/60401.cc: New.
7238
eac437bf
JW
7239 PR libstdc++/69386
7240 * include/c_global/ccomplex: Ensure C++ language linkage.
7241 * include/c_global/cmath: Likewise.
7242 * include/c_global/cstdlib: Likewise.
7243 * include/c_global/ctgmath: Likewise.
7244 * testsuite/17_intro/headers/c++2011/linkage.cc: New.
7245
96e19ada
JW
72462016-01-19 Jonathan Wakely <jwakely@redhat.com>
7247
7248 PR libstdc++/14608
7249 PR libstdc++/60401
7250 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
7251 --enable-cheaders=c_global configs.
7252 * include/Makefile.in: Regenerate.
7253 * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
7254 test and allow inclusion from C files.
7255 * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
7256 (at_quick_exit, quick_exit): Add using directives.
7257 * include/c_global/cmath: Use #include_next for math.h.
7258 * include/c_global/cstdlib: Use #include_next for stdlib.h.
7259 * testsuite/26_numerics/headers/cmath/14608.cc: New.
7260 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
7261 Remove xfail for most targets.
7262 * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
7263
9585381a
TR
72642016-01-18 Torvald Riegel <triegel@redhat.com>
7265
7266 * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
7267 (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
7268 and move after its definition.
7269 * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
7270 * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
7271 __GXX_WEAK__, and only provide transactional clones if
7272 _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm
7273 functions.
7274
f5460595
JW
72752016-01-18 Jonathan Wakely <jwakely@redhat.com>
7276
c91bcffc
JW
7277 PR libstdc++/60637
7278 * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
7279
d75d9f91 7280 PR libstdc++/69243
9c5ad80e
JW
7281 * include/std/functional (_Function_base::_M_not_empty_function):
7282 Change overloads for pointers to take arguments by value.
7283 * testsuite/20_util/function/cons/57465.cc: Add tests for
7284 pointer-to-member cases.
7285
f5460595
JW
7286 PR libstdc++/69340
7287 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
7288 Use macros for exception handling and fix unused parameter warning.
7289
271366f6
JDA
72902016-01-17 John David Anglin <danglin@gcc.gnu.org>
7291
7292 PR libstdc++/68734
7293 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
7294
7a5d1d34
TR
72952016-01-17 Torvald Riegel <triegel@redhat.com>
7296
7297 * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
7298
5445d5bf
L
72992016-01-16 H.J. Lu <hongjiu.lu@intel.com>
7300
7301 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
7302 __int128 symbols.
7303
3d076231
JW
73042016-01-15 Jonathan Wakely <jwakely@redhat.com>
7305
d7c1581c
JW
7306 PR libstdc++/69293
7307 * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
7308 static assertion that type is constructible from the arguments.
7309 * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
7310 * testsuite/20_util/uses_allocator/69293_neg.cc: New.
7311 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
7312
3d076231
JW
7313 PR libstdc++/69294
7314 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
7315 and isnan on AIX. Quote variables.
7316 * configure: Regenerate.
7317
a04d5fc9
TR
73182016-01-15 Torvald Riegel <triegel@redhat.com>
7319
7320 * include/bits/basic_string.h (basic_string): Declare friends.
7321 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
7322 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
7323 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
7324 length_error, out_of_range, runtime_error, range_error,
7325 underflow_error, overflow_error): Declare members as transaction-safe.
7326 (logic_error, runtime_error): Declare friend functions.
7327 * libsupc++/exception (exception, bad_exception): Declare members as
7328 transaction-safe.
7329 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
7330 transaction-safe members of exceptions and helper functions.
7331 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
7332 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
7333 (CXXABI_1.3.10): New.
7334 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
7335 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
7336 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
7337 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
7338 * include/Makefile.in: Regenerate.
7339 * config.h.in: Regenerate.
7340 * configure: Regenerate.
7341 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
7342
cebeb718
SE
73432016-01-15 Steve Ellcey <sellcey@imgtec.com>
7344
7345 * include/ext/random.tcc: Use __builtin_isfinite instead of
7346 std::isfinite.
7347
3b07547d
JW
73482016-01-15 Jonathan Wakely <jwakely@redhat.com>
7349
7350 * include/bits/std_mutex.h: Fix Doxygen @file name.
7351
2be75957
ESR
73522016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
7353 Jonathan Wakely <jwakely@redhat.com>
7354 Florian Goth <CaptainSifff@gmx.de>
7355
7356 Implement TR29124 C++ special Math Functions.
7357 * include/Makefile.am: Add new headers.
7358 * include/Makefile.in: Regenerate.
7359 * include/bits/specfun.h: New.
7360 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
7361 * include/tr1/bessel_function.tcc: Ditto.
7362 * include/tr1/beta_function.tcc: Ditto.
7363 * include/tr1/cmath: Ditto.
7364 * include/tr1/ell_integral.tcc: Ditto.
7365 * include/tr1/exp_integral.tcc: Ditto.
7366 * include/tr1/gamma.tcc: Ditto.
7367 * include/tr1/hypergeometric.tcc: Ditto.
7368 * include/tr1/legendre_function.tcc: Ditto.
7369 * include/tr1/modified_bessel_func.tcc: Ditto.
7370 * include/tr1/poly_hermite.tcc: Ditto.
7371 * include/tr1/poly_laguerre.tcc: Ditto.
7372 * include/tr1/riemann_zeta.tcc: Ditto.
7373 * include/tr1/special_function_util.h: Ditto.
7374 * testsuite/ext/special_functions/conf_hyperg: New.
7375 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
7376 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
7377 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
7378 * testsuite/ext/special_functions/hyperg: New.
7379 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
7380 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
7381 * testsuite/ext/special_functions/hyperg/compile.cc: New.
7382 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
7383 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
7384 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
7385 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
7386 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
7387 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
7388 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
7389 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
7390 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
7391 * testsuite/special_functions/03_beta/check_nan.cc: New.
7392 * testsuite/special_functions/03_beta/check_value.cc: New.
7393 * testsuite/special_functions/03_beta/compile.cc: New.
7394 * testsuite/special_functions/03_beta/compile_2.cc: New.
7395 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
7396 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
7397 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
7398 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
7399 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
7400 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
7401 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
7402 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
7403 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
7404 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
7405 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
7406 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
7407 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
7408 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
7409 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
7410 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
7411 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
7412 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
7413 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
7414 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
7415 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
7416 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
7417 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
7418 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
7419 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
7420 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
7421 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
7422 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
7423 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
7424 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
7425 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
7426 * testsuite/special_functions/11_ellint_1/compile.cc: New.
7427 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
7428 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
7429 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
7430 * testsuite/special_functions/12_ellint_2/compile.cc: New.
7431 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
7432 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
7433 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
7434 * testsuite/special_functions/13_ellint_3/compile.cc: New.
7435 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
7436 * testsuite/special_functions/14_expint/check_nan.cc: New.
7437 * testsuite/special_functions/14_expint/check_value.cc: New.
7438 * testsuite/special_functions/14_expint/compile.cc: New.
7439 * testsuite/special_functions/14_expint/compile_2.cc: New.
7440 * testsuite/special_functions/15_hermite/check_nan.cc: New.
7441 * testsuite/special_functions/15_hermite/check_value.cc: New.
7442 * testsuite/special_functions/15_hermite/compile.cc: New.
7443 * testsuite/special_functions/15_hermite/compile_2.cc: New.
7444 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
7445 * testsuite/special_functions/16_laguerre/check_value.cc: New.
7446 * testsuite/special_functions/16_laguerre/compile.cc: New.
7447 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
7448 * testsuite/special_functions/17_legendre/check_nan.cc: New.
7449 * testsuite/special_functions/17_legendre/check_value.cc: New.
7450 * testsuite/special_functions/17_legendre/compile.cc: New.
7451 * testsuite/special_functions/17_legendre/compile_2.cc: New.
7452 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
7453 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
7454 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
7455 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
7456 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
7457 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
7458 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
7459 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
7460 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
7461 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
7462 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
7463 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
7464 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
7465 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
7466 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
7467 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
7468 * testsuite/util/specfun_testcase.h: New.
7469 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
7470 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
7471 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
7472 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
7473 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
7474 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
7475 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
7476
39a1d8c8
JW
74772016-01-13 Jonathan Wakely <jwakely@redhat.com>
7478
7479 PR libstdc++/48891
7480 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
7481 and isnan functions.
7482 * config.h.in: Regenerate.
7483 * configure: Regenerate.
7484 * include/c_global/cmath (isinf(double), isnan(double))
7485 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
7486 * testsuite/26_numerics/headers/cmath/48891.cc: New.
7487
e862906c
RO
74882016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
7489
7490 PR libstdc++/66006
7491 * configure.host (abi_baseline_pair): Use separate baseline for
7492 Solaris 11+ and Solaris 10 with gld.
7493 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
7494 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
7495 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
7496
26b5ace7
DK
74972016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com>
7498
7499 PR libstdc++/68877
7500 * include/std/type_traits: Following N4511, reimplement __is_swappable
7501 and __is_nothrow_swappable. Move __is_swappable to namespace std,
7502 adjust callers. Use __is_nothrow_swappable in swap.
7503 * include/bits/move.h: Use __is_nothrow_swappable in swap.
7504 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
7505 __is_swappable related tests.
7506 * testsuite/20_util/is_swappable/value.cc: New.
7507 * testsuite/20_util/is_swappable/requirements/
7508 explicit_instantiation.cc: New.
7509 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
7510 * testsuite/25_algorithms/swap/68877.cc: New.
7511
1c3c7c41
JW
75122016-01-12 Jonathan Wakely <jwakely@redhat.com>
7513
bd285a8b
JW
7514 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
7515
1c3c7c41
JW
7516 PR libstdc++/69005
7517 PR libstdc++/69222
7518 * include/std/functional (function::_Invoke): Remove, use result_of.
7519 (function::_Callable): Replace alias template with class template
7520 and use partial specialization instead of _NotSelf alias template.
7521 (function(_Functor)): Add "not self" constraint so that _Callable is
7522 not used while type is incomplete.
7523 * testsuite/20_util/function/69222.cc: New.
7524
1517bc30
JW
75252016-01-11 Jonathan Wakely <jwakely@redhat.com>
7526
7527 PR libstdc++/60976
7528 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
7529 Define partial specialization.
7530 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
7531 destroy members to std::allocator explicit specialization.
7532
e525d78c
JW
75332016-01-08 Jonathan Wakely <jwakely@redhat.com>
7534
8babc12b
JW
7535 * testsuite/26_numerics/headers/cmath/
7536 c99_classification_macros_c++.cc: Rename to ...
7537 * testsuite/26_numerics/headers/cmath/
7538 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
7539 * testsuite/26_numerics/headers/cmath/
7540 c99_classification_macros_c++0x.cc: Rename to ...
7541 * testsuite/26_numerics/headers/cmath/
7542 c99_classification_macros_c++11.cc: Here.
7543
32a8c97f 7544 PR libstdc++/69190
e525d78c
JW
7545 * include/bits/uses_allocator.h: Add missing include.
7546
f885fa89
JW
75472016-01-07 Jonathan Wakely <jwakely@redhat.com>
7548
7549 PR libstdc++/69105
7550 PR libstdc++/69106
7551 PR libstdc++/69114
7552 * include/bits/stl_iterator.h (back_insert_iterator,
7553 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
7554 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
7555 * include/std/future (__future::base::_State_baseV2::__setter):
7556 Likewise.
7557 * include/std/scoped_allocator (__outermost): Likewise.
7558 * testsuite/20_util/scoped_allocator/69114.cc: New.
7559 * testsuite/20_util/uses_allocator/69114.cc: New.
7560 * testsuite/30_threads/promise/69106.cc: New.
7561
0c3e5dd1
JW
75622016-01-06 Jonathan Wakely <jwakely@redhat.com>
7563
373a75fb
JW
7564 PR libstdc++/69092
7565 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
7566 Remove _GLIBCXX_NOEXCEPT.
7567 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
7568
0c3e5dd1
JW
7569 * include/Makefile.am: Adjust.
7570 * include/Makefile.in: Regenerate.
7571 * include/bits/mutex.h: Rename to bits/std_mutex.h.
7572 * include/std/condition_variable: Adjust include.
7573 * include/std/mutex: Likewise.
7574
818ab71a 75752016-01-04 Jakub Jelinek <jakub@redhat.com>
5624e564
JJ
7576
7577 Update copyright years.
b4df5e92 7578\f
818ab71a 7579Copyright (C) 2016 Free Software Foundation, Inc.
b4df5e92
JW
7580
7581Copying and distribution of this file, with or without modification,
7582are permitted in any medium without royalty provided the copyright
7583notice and this notice are preserved.