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