]>
Commit | Line | Data |
---|---|---|
41501d1a TS |
1 | 2016-09-22 Tim Shen <timshen@google.com> |
2 | ||
3 | PR libstdc++/77641 | |
4 | * include/std/variant (_Variant_storage::_Variant_storage): | |
5 | Change _Variant_storage's union to be default constructible. | |
6 | * testsuite/20_util/variant/compile.cc: New test. | |
7 | ||
b641f833 VV |
8 | 2016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com> |
9 | ||
10 | PR libstdc++/77288 | |
11 | * include/std/optional (__is_optional_impl, __is_optional): Remove. | |
12 | (__converts_from_optional, __assigns_from_optional): New. | |
13 | (optional(_Up&&)): Use is_same instead of __is_optional. | |
14 | (optional(const optional<_Up>&)): Constrain with | |
15 | __converts_from_optional. | |
16 | (optional(optional<_Up>&&)): Likewise. | |
17 | (operator=(_Up&&)): Use is_same instead of __is_optional, check | |
18 | is_same and is_scalar. | |
19 | (operator=(const optional<_Up>&)): Constrain with | |
20 | __converts_from_optional and __assigns_from_optional. | |
21 | (operator=(optional<_Up>&&)): Likewise. | |
22 | * testsuite/20_util/optional/77288.cc: New. | |
23 | * testsuite/20_util/optional/cons/value.cc: Adjust. | |
24 | ||
55786785 VV |
25 | 2016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com> |
26 | ||
27 | Implement LWG 2729 for tuple. | |
28 | * include/std/tuple (_Tuple_impl(_Tuple_impl&&)): | |
29 | Suppress conditionally. | |
30 | (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise. | |
31 | (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New. | |
32 | (_Tuple_impl(const _Head&)): Constrain. | |
33 | (_Tuple_impl(_UHead&&)): Likewise. | |
34 | (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally. | |
35 | (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain. | |
36 | (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise. | |
37 | (operator=(const tuple&)): Enable conditionally. | |
38 | (operator=(tuple&&)): Suppress conditionally. | |
39 | (operator=(const tuple<_UElements...>&)): Constrain. | |
40 | (operator=(tuple<_UElements...>&&)): Likewise. | |
41 | (operator=(const tuple&)): Enable conditionally (2-param tuple). | |
42 | (operator=(tuple&&)): Suppress conditionally (2-param tuple). | |
43 | (operator=(const tuple<_U1, _U2>&)): Constrain. | |
44 | (operator=(tuple<_U1, _U2>&&)): Likewise. | |
45 | (operator=(const pair<_U1, _U2>&)): Likewise. | |
46 | (operator=(pair<_U1, _U2>&&)): Likewise. | |
47 | * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust. | |
48 | * testsuite/20_util/tuple/tuple_traits.cc: New. | |
49 | ||
f524d5b3 VV |
50 | 2016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com> |
51 | ||
52 | PR libstdc++/77537 | |
53 | Implement LWG 2729 for pair. | |
54 | * include/bits/stl_pair.h (_PCC): New. | |
55 | (_ConstructiblePair, _ImplicitlyConvertiblePair): | |
56 | Turn into static member functions of _PCC. | |
57 | (_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise. | |
58 | (_PCCP): New. | |
59 | (pair(const _T1&, const _T2&)): Adjust. | |
60 | (_PCCFP): New. | |
61 | (pair(const pair<_U1, _U2>&)): Adjust. | |
62 | (pair(_U1&&, const _T2&)): Likewise. | |
63 | (pair(const _T1&, _U2&&)): Likewise. | |
64 | (pair(_U1&&, _U2&&)): Likewise. | |
65 | (pair(pair<_U1, _U2>&&)): Likewise. | |
66 | (operator=(const pair&)): Make conditionally deleted. | |
67 | (operator=(pair&&)): Make conditionally suppressed. | |
68 | (operator=(const pair<_U1, _U2>&)): Constrain. | |
69 | (operator=(pair<_U1, _U2>&&): Likewise. | |
70 | * include/std/type_traits (__nonesuch): New. | |
71 | * testsuite/20_util/pair/traits.cc: New. | |
72 | ||
377f30c0 VV |
73 | 2016-09-20 Ville Voutilainen <ville.voutilainen@gmail.com> |
74 | ||
75 | PR libstdc++/77619 | |
76 | * include/bits/stl_construct.h: (_Construct_novalue): New. | |
77 | (_Destroy_n_aux, _Destroy_n): New. | |
78 | * include/bits/stl_uninitialized.h: (type_traits): | |
79 | New include in C++11 mode. | |
80 | (__uninitialized_default_novalue_1): New. | |
81 | (__uninitialized_default_novalue_n_1): Likewise. | |
82 | (__uninitialized_default_novalue): Likewise. | |
83 | (__uninitialized_default_novalue_n): Likewise. | |
84 | (__uninitialized_copy_n_pair): Likewise. | |
85 | (uninitialized_default_construct): | |
86 | Use __uninitialized_default_novalue. | |
87 | (uninitialized_default_construct_n): | |
88 | Use __uninitialized_default_novalue_n. | |
89 | (uninitialized_value_construct): Use __uninitialized_default. | |
90 | (uninitialized_value_construct_n): Use __uninitialized_default_n. | |
91 | (uninitialized_move): Use uninitialized_copy. | |
92 | (uninitialized_move_n): Use __uninitialized_copy_n_pair. | |
93 | (destroy_at): Use _Destroy. | |
94 | (destroy): Likewise. | |
95 | (destroy_n): Likewise. | |
96 | * testsuite/20_util/specialized_algorithms/ | |
97 | memory_management_tools/1.cc: Add tests for exceptions, | |
98 | add tests for trivial cases for construct and move. | |
99 | ||
564beb5f JW |
100 | 2016-09-20 Jonathan Wakely <jwakely@redhat.com> |
101 | ||
102 | * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__) | |
103 | (DequeWorkerBase.index, VectorWorkerBase.get): Use // for division. | |
104 | ||
019270bc JW |
105 | 2016-09-19 Jonathan Wakely <jwakely@redhat.com> |
106 | ||
d0f59435 JW |
107 | PR libstdc++/77645 |
108 | * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__) | |
109 | (DequeWorkerBase.index, VectorWorkerBase.get): Cast results of | |
110 | division to int to work with Python 3. | |
111 | ||
ee1ab3e3 JW |
112 | * testsuite/lib/gdb-test.exp (gdb-test): Fail if Python error occurs. |
113 | ||
a0a1009a JW |
114 | * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): Allow |
115 | display_hint to be set by subclasses. | |
116 | (StdVariantPrinter): Use array for display_hint. Adjust output to be | |
117 | more similar to std::any and std::optional output. | |
118 | (register_type_printers): Add type printers for basic_string_view | |
119 | typedefs and experimental::any. Adjust type printers for | |
120 | fundamentals_v1 templates to match fundamentals_v2 and later. | |
121 | * testsuite/libstdc++-prettyprinters/cxx17.cc: New. | |
122 | ||
019270bc JW |
123 | PR libstdc++/77645 |
124 | * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): Rename | |
125 | argument. | |
126 | (ListWorkerBase.get_value_from_node): Define new method. | |
127 | (ListFrontWorker.__call__, ListBackWorker.__call__): Use it. | |
128 | ||
00895372 JW |
129 | 2016-09-17 Jonathan Wakely <jwakely@redhat.com> |
130 | ||
131 | * python/libstdcxx/v6/printers.py (StdVariantPrinter): Define. | |
132 | (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter): | |
133 | Register for C++17 components in namespace std. Strip inline namespace | |
134 | from typename. | |
135 | ||
6ee3fd97 JW |
136 | 2016-09-16 Jonathan Wakely <jwakely@redhat.com> |
137 | ||
138 | * doc/xml/manual/profile_mode.xml: Fix typo. | |
139 | * doc/html/manual/profile_mode_devel.html: Regenerate. | |
140 | ||
84c08ec9 JW |
141 | 2016-09-16 Jonathan Wakely <jwakely@redhat.com> |
142 | Marc Glisse <marc.glisse@inria.fr> | |
143 | ||
144 | * libsupc++/new_opa.cc [_GLIBCXX_HAVE_ALIGNED_ALLOC] | |
145 | (operator new(size_t, align_val_t)): Replace modulus operator with | |
146 | mask. | |
147 | ||
426042f5 JW |
148 | 2016-09-16 Jonathan Wakely <jwakely@redhat.com> |
149 | ||
150 | * libsupc++/new_opa.cc [_GLIBCXX_HAVE_POSIX_MEMALIGN] (aligned_alloc): | |
151 | Increase alignment if less than sizeof(void*). | |
152 | [_GLIBCXX_HAVE_ALIGNED_ALLOC] (operator new(size_t, align_val_t)): | |
153 | Increase size if not a multiple of alignment. | |
154 | ||
0273c10e JW |
155 | 2016-09-15 Jonathan Wakely <jwakely@redhat.com> |
156 | ||
1b75c936 JW |
157 | * doc/xml/manual/debug_mode.xml: Minor editorial fixes. |
158 | * doc/html/*: Regenerate. | |
700e2faa JW |
159 | |
160 | * testsuite/23_containers/vector/debug/insert6_neg.cc: Remove | |
161 | -Wno-deprecated. | |
162 | * testsuite/util/debug/checks.h (generate_unique<bool>): Specialize. | |
0273c10e | 163 | |
20a1e5b8 MP |
164 | 2016-09-14 Marek Polacek <polacek@redhat.com> |
165 | ||
166 | * testsuite/23_containers/vector/debug/insert6_neg.cc: Use | |
167 | -Wno-deprecated. | |
168 | ||
13cddbc1 CL |
169 | 2016-09-14 Christophe Lyon <christophe.lyon@linaro.org> |
170 | ||
171 | * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: | |
172 | Move dg-do directive before dg-skip. | |
173 | * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: | |
174 | Move dg-do directive before dg-require. | |
175 | * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise. | |
176 | * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise. | |
177 | * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise. | |
178 | * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise. | |
179 | * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise. | |
180 | * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise. | |
181 | * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise. | |
182 | * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise. | |
183 | * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise. | |
184 | * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise. | |
185 | * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise. | |
186 | * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise. | |
187 | * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise. | |
188 | * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise. | |
189 | * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc: | |
190 | Likewise. | |
191 | * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise. | |
192 | * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise. | |
193 | * testsuite/27_io/objects/char/12048-5.cc: Likewise. | |
194 | * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise. | |
195 | * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise. | |
196 | ||
8e14a10c VV |
197 | 2016-09-13 Ville Voutilainen <ville.voutilainen@gmail.com> |
198 | ||
199 | Implement P0040R3, Extending memory management tools. | |
200 | * include/bits/stl_uninitialized.h (utility): New include | |
201 | in C++17 mode. | |
202 | (uninitialized_default_construct): New. | |
203 | (uninitialized_default_construct_n): Likewise. | |
204 | (uninitialized_value_construct): Likewise. | |
205 | (uninitialized_value_construct_n): Likewise. | |
206 | (uninitialized_move): Likewise. | |
207 | (uninitialized_move_n): Likewise. | |
208 | (destroy_at, destroy, destroy_n): Likewise. | |
7a461e27 JW |
209 | * testsuite/20_util/specialized_algorithms/memory_management_tools/ |
210 | 1.cc: New. | |
8e14a10c | 211 | |
a313485b JM |
212 | 2016-09-12 Jason Merrill <jason@redhat.com> |
213 | ||
214 | * config/abi/pre/gnu.ver: Use [jmy] for size_t. | |
215 | ||
5e8037ba VV |
216 | 2016-09-12 Ville Voutilainen <ville.voutilainen@gmail.com> |
217 | ||
218 | Implement P0253R1, Fixing a design mistake in the searchers | |
219 | interface in Library Fundamentals. | |
220 | * include/std/functional: (utility): New include in C++17 mode. | |
221 | (default_searcher): Use a pair as return type, adjust the definition. | |
222 | (boyer_moore_searcher): Likewise. | |
223 | (boyer_moore_horspool_searcher): Likewise. | |
224 | * testsuite/20_util/function_objects/searchers.cc: Adjust. | |
225 | ||
f82dfb8d VV |
226 | 2016-09-12 Ville Voutilainen <ville.voutilainen@gmail.com> |
227 | ||
228 | Implement C++17 string searchers. | |
229 | * include/std/functional: (unordered_map, vector): New includes | |
230 | in C++17 mode. | |
231 | (array, bits/stl_algo.h): Likewise. | |
232 | (default_searcher, __boyer_moore_map_base): New. | |
233 | (__boyer_moore_array_base, __is_std_equal_to): Likewise. | |
234 | (__boyer_moore_base_t, boyer_moore_searcher): Likewise. | |
235 | (boyer_moore_horspool_searcher, make_default_searcher): Likewise. | |
236 | (make_boyer_moore_searcher): Likewise. | |
237 | (make_boyer_moore_horspool_searcher): Likewise. | |
238 | * testsuite/20_util/function_objects/searchers.cc: New. | |
239 | ||
684211e1 MW |
240 | 2016-09-12 Matthew Wahab <matthew.wahab@arm.com> |
241 | ||
242 | * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: | |
243 | Move dg-do directive before dg-require. | |
244 | * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise. | |
245 | * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc: | |
246 | Likewise. | |
247 | * testsuite/22_locale/codecvt/utf8.cc: Likewise. | |
248 | * testsuite/22_locale/locale/cons/unicode.cc: Likewise. | |
249 | * testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise. | |
250 | * testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise. | |
251 | * testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise. | |
252 | * testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise. | |
253 | * testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise. | |
254 | * testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise. | |
255 | * testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise. | |
256 | * testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise. | |
257 | * testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise. | |
258 | * testsuite/23_containers/deque/debug/insert5_neg.cc: Likewise. | |
259 | * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc: | |
260 | Likewise. | |
7a461e27 JW |
261 | * testsuite/23_containers/deque/debug/self_move_assign_neg.cc: |
262 | Likewise. | |
684211e1 MW |
263 | * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise. |
264 | * testsuite/23_containers/forward_list/debug/60499.cc: Likewise. | |
7a461e27 JW |
265 | * testsuite/23_containers/forward_list/debug/construct1_neg.cc: |
266 | Likewise. | |
267 | * testsuite/23_containers/forward_list/debug/construct2_neg.cc: | |
268 | Likewise. | |
269 | * testsuite/23_containers/forward_list/debug/construct3_neg.cc: | |
270 | Likewise. | |
271 | * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: | |
272 | Likewise. | |
273 | * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc: | |
274 | Likewise. | |
275 | * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc: | |
276 | Likewise. | |
277 | * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc: | |
278 | Likewise. | |
279 | * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc: | |
280 | Likewise. | |
281 | * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc: | |
282 | Likewise. | |
283 | * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc: | |
284 | Likewise. | |
285 | * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc: | |
286 | Likewise. | |
287 | * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc: | |
288 | Likewise. | |
289 | * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc: | |
684211e1 | 290 | Likewise. |
7a461e27 JW |
291 | * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc: |
292 | Likewise. | |
293 | * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc: | |
294 | Likewise. | |
295 | * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc: | |
296 | Likewise. | |
297 | * testsuite/23_containers/forward_list/debug/ | |
298 | iterator_self_move_assign_neg.cc: Likewise. | |
684211e1 MW |
299 | * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc: |
300 | Likewise. | |
7a461e27 JW |
301 | * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc: |
302 | Likewise. | |
303 | * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc: | |
304 | Likewise. | |
305 | * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc: | |
306 | Likewise. | |
307 | * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc: | |
308 | Likewise. | |
309 | * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc: | |
310 | Likewise. | |
311 | * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc: | |
312 | Likewise. | |
313 | * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc: | |
314 | Likewise. | |
684211e1 MW |
315 | * testsuite/23_containers/list/debug/assign1_neg.cc: Likewise. |
316 | * testsuite/23_containers/list/debug/assign2_neg.cc: Likewise. | |
317 | * testsuite/23_containers/list/debug/assign3_neg.cc: Likewise. | |
318 | * testsuite/23_containers/list/debug/construct1_neg.cc: Likewise. | |
319 | * testsuite/23_containers/list/debug/construct2_neg.cc: Likewise. | |
320 | * testsuite/23_containers/list/debug/construct3_neg.cc: Likewise. | |
321 | * testsuite/23_containers/list/debug/insert1_neg.cc: Likewise. | |
322 | * testsuite/23_containers/list/debug/insert2_neg.cc: Likewise. | |
323 | * testsuite/23_containers/list/debug/insert3_neg.cc: Likewise. | |
324 | * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise. | |
325 | * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc: | |
326 | Likewise. | |
327 | * testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise. | |
328 | * testsuite/23_containers/map/debug/60499.cc: Likewise. | |
329 | * testsuite/23_containers/map/debug/construct1_neg.cc: Likewise. | |
330 | * testsuite/23_containers/map/debug/construct2_neg.cc: Likewise. | |
331 | * testsuite/23_containers/map/debug/construct3_neg.cc: Likewise. | |
332 | * testsuite/23_containers/map/debug/insert1_neg.cc: Likewise. | |
333 | * testsuite/23_containers/map/debug/insert2_neg.cc: Likewise. | |
334 | * testsuite/23_containers/map/debug/insert3_neg.cc: Likewise. | |
335 | * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc: | |
336 | Likewise. | |
337 | * testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise. | |
338 | * testsuite/23_containers/multimap/debug/60499.cc: Likewise. | |
339 | * testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise. | |
340 | * testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise. | |
341 | * testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise. | |
342 | * testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise. | |
343 | * testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise. | |
344 | * testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise. | |
7a461e27 JW |
345 | * testsuite/23_containers/multimap/debug/ |
346 | iterator_self_move_assign_neg.cc: Likewise. | |
347 | * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc: | |
684211e1 | 348 | Likewise. |
684211e1 MW |
349 | * testsuite/23_containers/multiset/debug/60499.cc: Likewise. |
350 | * testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise. | |
351 | * testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise. | |
352 | * testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise. | |
353 | * testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise. | |
354 | * testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise. | |
355 | * testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise. | |
7a461e27 JW |
356 | * testsuite/23_containers/multiset/debug/ |
357 | iterator_self_move_assign_neg.cc: Likewise. | |
358 | * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc: | |
684211e1 | 359 | Likewise. |
684211e1 MW |
360 | * testsuite/23_containers/set/debug/60499.cc: Likewise. |
361 | * testsuite/23_containers/set/debug/construct1_neg.cc: Likewise. | |
362 | * testsuite/23_containers/set/debug/construct2_neg.cc: Likewise. | |
363 | * testsuite/23_containers/set/debug/construct3_neg.cc: Likewise. | |
364 | * testsuite/23_containers/set/debug/insert1_neg.cc: Likewise. | |
365 | * testsuite/23_containers/set/debug/insert2_neg.cc: Likewise. | |
366 | * testsuite/23_containers/set/debug/insert3_neg.cc: Likewise. | |
367 | * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc: | |
368 | Likewise. | |
369 | * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise. | |
370 | * testsuite/23_containers/unordered_map/debug/60499.cc: Likewise. | |
371 | * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: Likewise. | |
372 | * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: Likewise. | |
7a461e27 JW |
373 | * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc: |
374 | Likewise. | |
684211e1 MW |
375 | * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: Likewise. |
376 | * testsuite/23_containers/unordered_map/debug/cend_neg.cc: Likewise. | |
7a461e27 JW |
377 | * testsuite/23_containers/unordered_map/debug/construct1_neg.cc: |
378 | Likewise. | |
379 | * testsuite/23_containers/unordered_map/debug/construct2_neg.cc: | |
380 | Likewise. | |
381 | * testsuite/23_containers/unordered_map/debug/construct3_neg.cc: | |
382 | Likewise. | |
684211e1 MW |
383 | * testsuite/23_containers/unordered_map/debug/end1_neg.cc: Likewise. |
384 | * testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise. | |
385 | * testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise. | |
386 | * testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise. | |
387 | * testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise. | |
7a461e27 JW |
388 | * testsuite/23_containers/unordered_map/debug/ |
389 | invalid_local_iterator_compare_neg.cc: Likewise. | |
390 | * testsuite/23_containers/unordered_map/debug/ | |
391 | invalid_local_iterator_range_neg.cc: Likewise. | |
392 | * testsuite/23_containers/unordered_map/debug/ | |
393 | iterator_self_move_assign_neg.cc: Likewise. | |
684211e1 MW |
394 | * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc: |
395 | Likewise. | |
396 | * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc: | |
397 | Likewise. | |
7a461e27 JW |
398 | * testsuite/23_containers/unordered_map/debug/ |
399 | use_erased_local_iterator_neg.cc: Likewise. | |
400 | * testsuite/23_containers/unordered_map/debug/ | |
401 | use_invalid_iterator_neg.cc: Likewise. | |
402 | * testsuite/23_containers/unordered_map/debug/ | |
403 | use_invalid_local_iterator_neg.cc: Likewise. | |
404 | * testsuite/23_containers/unordered_multimap/debug/60499.cc: Likewise. | |
405 | * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc: | |
684211e1 | 406 | Likewise. |
7a461e27 | 407 | * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: |
684211e1 | 408 | Likewise. |
684211e1 MW |
409 | * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc: |
410 | Likewise. | |
7a461e27 JW |
411 | * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: |
412 | Likewise. | |
413 | * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: | |
414 | Likewise. | |
684211e1 MW |
415 | * testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc: |
416 | Likewise. | |
417 | * testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc: | |
418 | Likewise. | |
419 | * testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc: | |
420 | Likewise. | |
7a461e27 | 421 | * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: |
684211e1 | 422 | Likewise. |
7a461e27 | 423 | * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: |
684211e1 | 424 | Likewise. |
7a461e27 | 425 | * testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc: |
684211e1 | 426 | Likewise. |
7a461e27 | 427 | * testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc: |
684211e1 | 428 | Likewise. |
7a461e27 | 429 | * testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc: |
684211e1 | 430 | Likewise. |
7a461e27 JW |
431 | * testsuite/23_containers/unordered_multimap/debug/ |
432 | invalid_local_iterator_compare_neg.cc: Likewise. | |
433 | * testsuite/23_containers/unordered_multimap/debug/ | |
434 | invalid_local_iterator_range_neg.cc: Likewise. | |
435 | * testsuite/23_containers/unordered_multimap/debug/ | |
436 | iterator_self_move_assign_neg.cc: Likewise. | |
437 | * testsuite/23_containers/unordered_multimap/debug/ | |
438 | max_load_factor_neg.cc: Likewise. | |
439 | * testsuite/23_containers/unordered_multimap/debug/ | |
440 | self_move_assign_neg.cc: Likewise. | |
441 | * testsuite/23_containers/unordered_multimap/debug/ | |
442 | use_erased_local_iterator_neg.cc: Likewise. | |
443 | * testsuite/23_containers/unordered_multimap/debug/ | |
444 | use_invalid_iterator_neg.cc: Likewise. | |
445 | * testsuite/23_containers/unordered_multimap/debug/ | |
446 | use_invalid_local_iterator_neg.cc: Likewise. | |
684211e1 MW |
447 | * testsuite/23_containers/unordered_multiset/debug/60499.cc: |
448 | Likewise. | |
449 | * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc: | |
450 | Likewise. | |
451 | * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc: | |
452 | Likewise. | |
453 | * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc: | |
454 | Likewise. | |
455 | * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc: | |
456 | Likewise. | |
457 | * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc: | |
458 | Likewise. | |
459 | * testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc: | |
460 | Likewise. | |
461 | * testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc: | |
462 | Likewise. | |
463 | * testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc: | |
464 | Likewise. | |
7a461e27 | 465 | * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc: |
684211e1 | 466 | Likewise. |
7a461e27 | 467 | * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc: |
684211e1 | 468 | Likewise. |
7a461e27 | 469 | * testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc: |
684211e1 | 470 | Likewise. |
7a461e27 | 471 | * testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc: |
684211e1 | 472 | Likewise. |
7a461e27 | 473 | * testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc: |
684211e1 | 474 | Likewise. |
7a461e27 JW |
475 | * testsuite/23_containers/unordered_multiset/debug/ |
476 | invalid_local_iterator_compare_neg.cc: Likewise. | |
477 | * testsuite/23_containers/unordered_multiset/debug/ | |
478 | invalid_local_iterator_range_neg.cc: Likewise. | |
479 | * testsuite/23_containers/unordered_multiset/debug/ | |
480 | iterator_self_move_assign_neg.cc: Likewise. | |
481 | * testsuite/23_containers/unordered_multiset/debug/ | |
482 | max_load_factor_neg.cc: Likewise. | |
483 | * testsuite/23_containers/unordered_multiset/debug/ | |
484 | self_move_assign_neg.cc: Likewise. | |
485 | * testsuite/23_containers/unordered_multiset/debug/ | |
486 | use_erased_local_iterator_neg.cc: Likewise. | |
487 | * testsuite/23_containers/unordered_multiset/debug/ | |
488 | use_invalid_iterator_neg.cc: Likewise. | |
489 | * testsuite/23_containers/unordered_multiset/debug/ | |
490 | use_invalid_local_iterator_neg.cc: Likewise. | |
684211e1 MW |
491 | * testsuite/23_containers/unordered_set/debug/60499.cc: Likewise. |
492 | * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: Likewise. | |
493 | * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: Likewise. | |
7a461e27 JW |
494 | * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc: |
495 | Likewise. | |
684211e1 MW |
496 | * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: Likewise. |
497 | * testsuite/23_containers/unordered_set/debug/cend_neg.cc: Likewise. | |
7a461e27 JW |
498 | * testsuite/23_containers/unordered_set/debug/construct1_neg.cc: |
499 | Likewise. | |
500 | * testsuite/23_containers/unordered_set/debug/construct2_neg.cc: | |
501 | Likewise. | |
502 | * testsuite/23_containers/unordered_set/debug/construct3_neg.cc: | |
503 | Likewise. | |
684211e1 MW |
504 | * testsuite/23_containers/unordered_set/debug/end1_neg.cc: Likewise. |
505 | * testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise. | |
506 | * testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise. | |
507 | * testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise. | |
508 | * testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise. | |
7a461e27 JW |
509 | * testsuite/23_containers/unordered_set/debug/ |
510 | invalid_local_iterator_compare_neg.cc: Likewise. | |
511 | * testsuite/23_containers/unordered_set/debug/ | |
512 | invalid_local_iterator_range_neg.cc: Likewise. | |
513 | * testsuite/23_containers/unordered_set/debug/ | |
514 | iterator_self_move_assign_neg.cc: Likewise. | |
515 | * testsuite/23_containers/unordered_set/debug/ | |
516 | max_load_factor_neg.cc: Likewise. | |
517 | * testsuite/23_containers/unordered_set/debug/ | |
518 | self_move_assign_neg.cc: Likewise. | |
519 | * testsuite/23_containers/unordered_set/debug/ | |
520 | use_erased_local_iterator_neg.cc: Likewise. | |
521 | * testsuite/23_containers/unordered_set/debug/ | |
522 | use_invalid_iterator_neg.cc: Likewise. | |
523 | * testsuite/23_containers/unordered_set/debug/ | |
524 | use_invalid_local_iterator_neg.cc: Likewise. | |
684211e1 MW |
525 | * testsuite/23_containers/vector/debug/52433.cc: Likewise. |
526 | * testsuite/23_containers/vector/debug/60499.cc: Likewise. | |
527 | * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise. | |
7a461e27 JW |
528 | * testsuite/23_containers/vector/debug/ |
529 | iterator_self_move_assign_neg.cc: Likewise. | |
530 | * testsuite/23_containers/vector/debug/self_move_assign_neg.cc: | |
684211e1 | 531 | Likewise. |
684211e1 MW |
532 | * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise. |
533 | * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise. | |
534 | * testsuite/25_algorithms/push_heap/complexity.cc: Likewise. | |
535 | * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise. | |
536 | * testsuite/29_atomics/atomic/60658.cc: Likewise. | |
537 | * testsuite/29_atomics/atomic/60695.cc: Likewise. | |
538 | * testsuite/29_atomics/atomic/62259.cc: Likewise. | |
539 | * testsuite/29_atomics/atomic/64658.cc: Likewise. | |
540 | * testsuite/29_atomics/atomic/cons/49445.cc: Likewise. | |
541 | * testsuite/29_atomics/atomic/operators/51811.cc: Likewise. | |
7a461e27 JW |
542 | * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: |
543 | Likewise. | |
684211e1 | 544 | |
25011292 JW |
545 | 2016-09-11 Jonathan Wakely <jwakely@redhat.com> |
546 | ||
547 | * libsupc++/new_opant.cc: Include exception_defines.h. | |
548 | * libsupc++/new_opvant.cc: Likewise. | |
549 | ||
af63ba4b JM |
550 | 2016-09-09 Jason Merrill <jason@redhat.com> |
551 | ||
552 | Implement P0035R4, C++17 new of over-aligned types. | |
553 | * libsupc++/new: Declare aligned new/delete operators. | |
554 | * config/abi/pre/gnu.ver: Export them. | |
555 | * configure.ac: Check for aligned_alloc, posix_memalign, memalign, | |
556 | _aligned_malloc. | |
557 | * libsupc++/new_opa.cc: New. | |
558 | * libsupc++/new_opant.cc: New. | |
559 | * libsupc++/new_opva.cc: New. | |
560 | * libsupc++/new_opva.cc: New. | |
561 | * libsupc++/del_opa.cc: New. | |
562 | * libsupc++/del_opant.cc: New. | |
563 | * libsupc++/del_opsa.cc: New. | |
564 | * libsupc++/del_opva.cc: New. | |
565 | * libsupc++/del_opvant.cc: New. | |
566 | * libsupc++/del_opvsa.cc: New. | |
567 | * libsupc++/Makefile.am: Build them. | |
568 | ||
f75d5999 TS |
569 | 2016-09-05 Tim Shen <timshen@google.com> |
570 | ||
571 | * include/std/variant: include bits/move.h for std::addressof. | |
572 | ||
eddca7bd MS |
573 | 2016-09-05 Mikhail Strelnikov <mikhail.strelnikov@gmail.com> |
574 | ||
7a461e27 JW |
575 | * include/std/variant (_Variant_storage::_M_storage()): Use |
576 | std::addressof instead of operator& to take address. | |
eddca7bd | 577 | |
5a810362 MK |
578 | 2016-09-02 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> |
579 | ||
580 | * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Check for presence of | |
581 | setrlimit on both native and cross targets. | |
582 | * configure: Regenerate. | |
583 | ||
3625264f JW |
584 | 2016-08-31 Jonathan Wakely <jwakely@redhat.com> |
585 | ||
7663cae2 JW |
586 | * include/bits/shared_ptr.h (_Assignable): New alias template. |
587 | (shared_ptr::operator=(const shared_ptr<_Tp1>&)) | |
588 | (shared_ptr::operator=(shared_ptr<_Tp1>&&)) | |
589 | (shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with | |
590 | _Assignable. | |
591 | * include/bits/shared_ptr_base.h (_Assignable): New alias template. | |
592 | (__shared_ptr::operator=(const __shared_ptr<_Tp1>&)) | |
593 | (__shared_ptr::operator=(__shared_ptr<_Tp1>&&)) | |
594 | (__shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with | |
595 | _Assignable. | |
596 | (__shared_ptr::reset(_Tp1*), __shared_ptr::reset(_Tp1*, _Deleter)) | |
597 | (__shared_ptr::reset(_Tp1*, _Deleter, _Alloc)): Constrain with | |
598 | _Convertible. | |
599 | * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Change dg-error to | |
600 | match on any line. | |
601 | * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise. | |
602 | * testsuite/20_util/shared_ptr/assign/sfinae.cc: New test. | |
603 | * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Update | |
604 | expected errors. Remove unnecessary code. | |
605 | * testsuite/20_util/shared_ptr/modifiers/reset_sfinae.cc: New test. | |
606 | ||
e46d22a8 JW |
607 | * include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Move |
608 | comparison object. | |
609 | * testsuite/23_containers/set/move_comparison.cc: New test. | |
610 | ||
3625264f JW |
611 | * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc: |
612 | New test. | |
613 | ||
7875b41f VV |
614 | 2016-08-30 Ville Voutilainen <ville.voutilainen@gmail.com> |
615 | ||
616 | PR libstdc++/77395 | |
617 | * include/std/type_traits (is_constructible): Forward-declare... | |
618 | (__is_base_to_derived_ref): ...and use here. | |
619 | * testsuite/20_util/declval/requirements/1_neg.cc: Adjust. | |
620 | * testsuite/20_util/is_constructible/77395.cc: New. | |
621 | * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust. | |
622 | * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: | |
623 | Likewise. | |
624 | * testsuite/20_util/tuple/77395.cc: New. | |
625 | ||
e1becf59 UB |
626 | 2016-08-30 Uros Bizjak <ubizjak@gmail.com> |
627 | ||
628 | * testsuite/22_locale/time_get/get/char/2.cc: Move dg-do run | |
629 | directive above dg-require-namedlocale directive. | |
630 | * testsuite/22_locale/time_get/get/wchar_t/2.cc: Ditto. | |
631 | * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Ditto. | |
632 | * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Ditto. | |
633 | * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Ditto. | |
634 | * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Ditto. | |
635 | ||
4aebb4e4 TS |
636 | 2016-08-27 Tim Shen <timshen@google.com> |
637 | ||
638 | PR libstdc++/77356 | |
639 | * include/bits/regex_compiler.tcc(_M_insert_bracket_matcher, | |
640 | _M_expression_term): Modify to support dash literal. | |
641 | * include/bits/regex_scanner.h: Add dash as a token type to make | |
642 | a different from the mandated dash literal by escaping. | |
643 | * include/bits/regex_scanner.tcc(_M_scan_in_bracket): Emit dash | |
644 | token in bracket expression parsing. | |
645 | * testsuite/28_regex/regression.cc: Add new testcases. | |
646 | ||
52066eae JW |
647 | 2016-08-26 Jonathan Wakely <jwakely@redhat.com> |
648 | ||
10491e4c JW |
649 | PR libstdc++/51960 |
650 | * doc/xml/manual/intro.xml: Document DR 2127 change. | |
651 | * doc/html/*: Regenerate. | |
652 | * include/bits/stl_raw_storage_iter.h (operator=(_Tp&&)): Add. | |
653 | (operator++(), operator++(int)): Use injected class name. | |
654 | * testsuite/20_util/raw_storage_iterator/dr2127.cc: New test. | |
655 | ||
52066eae JW |
656 | * testsuite/*: Use { target c++11 } or { target c++14 } instead of |
657 | using -std in dg-options. | |
658 | ||
e8223484 JW |
659 | 2016-08-26 Jonathan Wakely <jwakely@redhat.com> |
660 | Pedro Alves <palves@redhat.com> | |
661 | ||
662 | * testsuite/lib/gdb-test.exp (gdb-dg-runtest): Define wrapper to save | |
663 | and restore dg-interpreter-batch-mode. | |
664 | * testsuite/libstdc++-prettyprinters/prettyprinters.exp: Use | |
665 | gdb-dg-runtest instead of dg-runtest. | |
666 | * testsuite/libstdc++-xmethods/xmethods.exp: Likewise. | |
667 | ||
86bbf15b JW |
668 | 2016-08-26 Jonathan Wakely <jwakely@redhat.com> |
669 | ||
670 | * config/abi/pre/gnu.ver (GLIBCXX_3.4, GLIBCXX_3.4.21): Use more | |
671 | precise patterns for basic_string constructors. | |
672 | (GLIBCXX_3.4.23): Export new constructors. | |
673 | * doc/xml/manual/intro.xml: Document LWG 2583 status. | |
674 | * doc/html/*: Regenerate. | |
675 | * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] | |
676 | (basic_string(const basic_string&, size_type, const Alloc&)): Add | |
677 | new constructor for LWG 2583. | |
678 | (basic_string(const basic_string&, size_type, size_type)): Remove | |
679 | default argument. | |
680 | [!_GLIBCXX_USE_CXX11_ABI]: Likewise. | |
681 | * include/bits/basic_string.tcc [!_GLIBCXX_USE_CXX11_ABI]: Define it. | |
682 | * testsuite/21_strings/basic_string/cons/char/8.cc: New test. | |
683 | * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: New test. | |
684 | ||
9a38acdf AK |
685 | 2016-08-24 Aditya Kumar <hiraditya@msn.com> |
686 | ||
687 | * include/bits/algorithmfwd.h: Remove trailing whitespace. | |
688 | * include/bits/shared_ptr_base.h: Likewise. | |
689 | ||
06db9920 JW |
690 | 2016-08-23 Jonathan Wakely <jwakely@redhat.com> |
691 | ||
e90a8010 JW |
692 | * include/debug/array (array): Add _GLIBCXX17_CONSTEXPR. |
693 | * include/profile/array (array): Likewise. | |
694 | (array::swap): Fix exception specification for zero-sized arrays. | |
695 | ||
5ea387db JW |
696 | PR libstdc++/77334 |
697 | * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions. | |
698 | (_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign. | |
699 | * testsuite/23_containers/map/77334.cc: New test. | |
700 | ||
5d1c6b3e JW |
701 | * doc/xml/manual/using.xml: Remove reference to -pthreads option. |
702 | * doc/html/*: Regenerate. | |
703 | ||
457c4a3f JW |
704 | * testsuite/experimental/feat-cxx14.cc: Only preprocess, not compile. |
705 | * testsuite/experimental/feat-lib-fund.cc: Likewise. | |
706 | ||
b405d54f JW |
707 | PR libstdc++/71771 |
708 | * include/bits/stl_iterator.h | |
709 | (operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Only | |
710 | define for C++98 mode. | |
711 | (operator-(move_iterator<Iter>, move_iterator<Iter>): Don't define. | |
712 | * testsuite/24_iterators/headers/iterator/synopsis.cc: Use | |
713 | -std=gnu++98. | |
714 | * testsuite/24_iterators/headers/iterator/synopsis_c++11.cc: New test. | |
715 | * testsuite/24_iterators/headers/iterator/synopsis_c++14.cc: New test. | |
716 | * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: New test. | |
717 | * testsuite/24_iterators/move_iterator/greedy_ops.cc: Don't test | |
718 | difference operator. | |
719 | * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Only test | |
720 | difference operator for C++98. | |
721 | * testsuite/24_iterators/reverse_iterator/71771.cc: New test. | |
722 | ||
06db9920 JW |
723 | * include/bits/c++config (_GLIBCXX17_CONSTEXPR): Define. |
724 | * include/bits/range_access.h (begin, end, rbegin, rend, crbegin) | |
725 | (crend): Add _GLIBCXX17_CONSTEXPR as per P0031R0. | |
726 | * include/bits/stl_iterator.h (reverse_iterator, move_iterator) | |
727 | (__make_reverse_iterator, make_reverse_iterator, make_move_iterator): | |
728 | Likewise. | |
729 | * include/bits/stl_iterator_base_funcs.h (__distance, __advance): Add | |
730 | _GLIBCXX14_CONSTEXPR. | |
731 | (distance, advance, next, prev): Add _GLIBCXX17_CONSTEXPR. | |
732 | * include/std/array (array::begin, array::end, array::rbegin) | |
733 | (array::rend, array::cbegin, array:cend, array::crbegin) | |
734 | (array::crend, array::operator[], array::at, array::front) | |
735 | (array::back, array::data): Likewise. | |
736 | * testsuite/24_iterators/headers/iterator/range_access.cc: Replace | |
737 | with separate tests for C++11, C++14, and C++17. | |
738 | * testsuite/24_iterators/headers/iterator/range_access_c++11.cc: New. | |
739 | * testsuite/24_iterators/headers/iterator/range_access_c++14.cc: New. | |
740 | * testsuite/24_iterators/headers/iterator/range_access_c++17.cc: New. | |
741 | ||
d79d6252 TS |
742 | 2016-08-22 Tim Shen <timshen@google.com> |
743 | ||
744 | Split _M_dfs() into smaller functions. | |
745 | * regex_executor.h(_M_handle_repeat, _M_handle_subexpr_begin) | |
746 | (_M_handle_subexpr_end, _M_handle_line_begin_assertion) | |
747 | (_M_handle_line_end_assertion, _M_handle_word_boundary) | |
748 | (_M_handle_subexpr_lookahead, _M_handle_match) | |
749 | (_M_handle_backref, _M_handle_accept, _M_handle_alternative): | |
750 | Add separate function declarations. | |
751 | * regex_executor.tcc: Split _M_dfs() into multiple handler functions. | |
752 | ||
27abac26 GN |
753 | 2016-08-22 Gleb Natapov <gleb@scylladb.com> |
754 | ||
755 | PR libstdc++/68297 | |
756 | * config/abi/pre/gnu-versioned-namespace.ver: Export | |
757 | __cxa_init_primary_exception and std::exception_ptr(void*). | |
758 | * config/abi/pre/gnu.ver (CXXABI_1.3.11) : Add new symbol version and | |
759 | export __cxa_init_primary_exception and std::exception_ptr(void*). | |
760 | * include/Makefile.am: Add new headers. | |
761 | * include/Makefile.in: Regenerate. | |
762 | * libsupc++/Makefile.am: Add new headers. | |
763 | * libsupc++/Makefile.in: Regenerate. | |
764 | * libsupc++/cxxabi.h (__cxa_allocate_exception): Move to ... | |
765 | * libsupc++/cxxabi_init_exception.h: New header. | |
766 | (__cxa_init_primary_exception): Declare. | |
767 | * libsupc++/eh_throw.cc (__cxa_init_primary_exception): Define. | |
768 | (__cxa_throw): Use __cxa_init_primary_exception. | |
769 | * libsupc++/exception (std::exception): Move to ... | |
770 | * libsupc++/exception.h: New header. | |
771 | * libsupc++/exception_ptr.h (__exception_ptr::exception_ptr): Add | |
772 | friend declaration. | |
773 | (__exception_ptr::__dest_thunk): New function template. | |
774 | (std::make_exception_ptr) [__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]: | |
775 | Use __cxa_allocate_exception and __cxa_init_primary_exception to | |
776 | create exception_ptr. | |
777 | * libsupc++/typeinfo: Include bits/exception.h instead of exception. | |
778 | * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.11 version. | |
779 | ||
94f54d47 JW |
780 | 2016-08-22 Jonathan Wakely <jwakely@redhat.com> |
781 | ||
4c86ffcc JW |
782 | * doc/xml/api.xml: Replace hardcoded links for specific versions with |
783 | link to docs for all releases. | |
784 | * doc/html/*: Regenerate. | |
785 | ||
94f54d47 JW |
786 | PR libstdc++/77322 |
787 | * doc/xml/manual/intro.xml: Document DR 2062 change. | |
788 | * include/std/functional (function::swap): Add noexcept. | |
789 | (swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise. | |
790 | * testsuite/20_util/function/77322.cc: New test. | |
791 | ||
1f4ed04e JW |
792 | 2016-08-19 Jonathan Wakely <jwakely@redhat.com> |
793 | ||
71c54f8e JW |
794 | * testsuite/21_strings/basic_string/pthread18185.cc: Use -pthread for |
795 | *-*-solaris* instead of -pthreads. | |
796 | * testsuite/21_strings/basic_string/pthread4.cc : Likewise. | |
797 | * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise. | |
798 | * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise. | |
799 | * testsuite/23_containers/list/pthread1.cc: Likewise. | |
800 | * testsuite/23_containers/list/pthread5.cc: Likewise. | |
801 | * testsuite/23_containers/map/pthread6.cc: Likewise. | |
802 | * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise. | |
803 | * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise. | |
804 | * testsuite/30_threads/shared_mutex/*: Likewise. | |
805 | * testsuite/ext/rope/pthread7-rope.cc: Likewise. | |
806 | * testsuite/tr1/2_general_utilities/shared_ptr/thread/ | |
807 | default_weaktoshared.cc: Likewise. | |
808 | * testsuite/tr1/2_general_utilities/shared_ptr/thread/ | |
809 | mutex_weaktoshared.cc: Likewise. | |
810 | * testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. Use | |
811 | dg-require-effective-target instead of using -std option. | |
812 | * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: | |
813 | Likewise. | |
814 | * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise. | |
815 | * testsuite/23_containers/vector/debug/multithreaded_swap.cc: | |
816 | Likewise. | |
817 | * testsuite/30_threads/async/*: Likewise. | |
818 | * testsuite/30_threads/call_once/*: Likewise. | |
819 | * testsuite/30_threads/condition_variable/*: Likewise. | |
820 | * testsuite/30_threads/condition_variable_any/*: Likewise. | |
821 | * testsuite/30_threads/future/*: Likewise. | |
822 | * testsuite/30_threads/lock/*: Likewise. | |
823 | * testsuite/30_threads/mutex/*: Likewise. | |
824 | * testsuite/30_threads/packaged_task/*: Likewise. | |
825 | * testsuite/30_threads/promise/*: Likewise. | |
826 | * testsuite/30_threads/recursive_mutex/*: Likewise. | |
827 | * testsuite/30_threads/recursive_timed_mutex/*: Likewise. | |
828 | * testsuite/30_threads/shared_future/*: Likewise. | |
829 | * testsuite/30_threads/shared_lock/*: Likewise. | |
830 | * testsuite/30_threads/shared_timed_mutex/*: Likewise. | |
831 | * testsuite/30_threads/this_thread/*: Likewise. | |
832 | * testsuite/30_threads/thread/*: Likewise. | |
833 | * testsuite/30_threads/timed_mutex/*: Likewise. | |
834 | * testsuite/30_threads/try_lock/*: Likewise. | |
835 | * testsuite/30_threads/unique_lock/*: Likewise. | |
836 | ||
e6ee5bfd JW |
837 | * doc/xml/manual/status_cxx2017.xml: Update status of not_fn. |
838 | * doc/html/*: Regenerate. | |
839 | * include/experimental/functional (_Not_fn, not_fn): Match C++17 | |
840 | semantics. | |
841 | * include/std/functional (_Not_fn, not_fn): Define for C++17. | |
842 | * testsuite/20_util/not_fn/1.cc: New. | |
843 | * testsuite/experimental/functional/not_fn.cc: Test abstract class. | |
844 | Remove test for volatile-qualified wrapper. | |
845 | ||
387edf83 JW |
846 | * include/std/atomic (atomic::is_always_lock_free): Define. |
847 | * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno. | |
848 | * testsuite/29_atomics/atomic/is_always_lock_free.cc: New. | |
849 | * testsuite/29_atomics/atomic_integral/is_always_lock_free.cc: New. | |
850 | * doc/xml/manual/status_cxx2017.xml: Update status. | |
851 | * doc/html/*: Regenerate. | |
852 | ||
285ee2fb JW |
853 | * include/experimental/tuple (apply): Qualify call to __apply_impl. |
854 | * include/std/tuple (apply): Likewise. | |
855 | * testsuite/experimental/system_error/value.cc: Fix ambiguities in | |
856 | C++17 mode. | |
857 | * testsuite/experimental/tuple/tuple_size.cc: Likewise. | |
858 | * testsuite/experimental/type_traits/value.cc: Likewise. | |
859 | ||
1f4ed04e JW |
860 | * doc/xml/manual/status_cxx2017.xml: Update status of make_from_tuple |
861 | and variant. | |
862 | * doc/html/*: Regenerate. | |
863 | ||
a577f786 VV |
864 | 2016-08-18 Ville Voutilainen <ville.voutilainen@gmail.com> |
865 | ||
866 | Implement the latest proposed resolution of LWG 2756. | |
867 | * include/std/optional (Optional_base(const _Tp&)) | |
868 | (Optional_base(_Tp&&), using _Base::_Base): Remove. | |
869 | (optional(nullopt_t)): New. | |
870 | (optional(_Up&&)): Invoke base directly with in_place | |
871 | rather than creating a temporary, add default template | |
872 | argument, change constraints. | |
873 | (optional(const optional<_Up>&)): Invoke base directly | |
874 | with in_place, remove unnecessary constraints. | |
875 | (optional(optional<_Up>&& __t)): Likewise. | |
876 | (optional(in_place_t, _Args&&...)): New. | |
877 | (optional(in_place_t, initializer_list<_Up>, _Args&&...)): Likewise. | |
878 | (operator=(_Up&&)): Add default template argument, change constraints. | |
879 | (operator=(const optional<_Up>&)): Put is_same first in the | |
880 | constraints. | |
881 | (operator=(optional<_Up>&&)): Likewise. | |
882 | * testsuite/20_util/optional/assignment/5.cc: Add a test to | |
883 | verify assignment from something that can't be perfect-forwarded. | |
884 | * testsuite/20_util/optional/cons/value.cc: Add tests to verify | |
885 | that a nested optional is disengaged when constructed | |
886 | from a disengaged element type, and to verify that assignments | |
887 | from an engaged element type engage the optional. | |
888 | ||
197c757c TS |
889 | 2016-08-18 Tim Shen <timshen@google.com> |
890 | ||
891 | Implement <variant> | |
892 | ||
893 | * include/Makefile.am: Add new file std/variant. | |
894 | * include/Makefile.in: Generated from Makefile.am. | |
895 | * include/bits/enable_special_members.h: Add a tag type to allow | |
896 | the construction in non-default constructor. | |
897 | * include/bits/uses_allocator.h: Add convenience traits to | |
898 | detect constructibility. | |
899 | * include/std/variant: Implement <variant>. | |
900 | * testsuite/20_util/variant/compile.cc: Compile-time tests. | |
901 | * testsuite/20_util/variant/run.cc: Runtime tests. | |
902 | ||
6cb98491 JW |
903 | 2016-08-18 Jonathan Wakely <jwakely@redhat.com> |
904 | ||
0b224dcf JW |
905 | * doc/xml/manual/test.xml (test.run.permutations): Expand section. |
906 | (test.new_tests): Rewrite section. | |
907 | (tests.dg.directives): New section. | |
908 | * doc/html/*: Regenerate. | |
909 | ||
b56d48ef JW |
910 | * doc/xml/manual/test.xml: Improve documentation of test targets. |
911 | Document new-abi-baseline, check-debug, and check-parallel targets. | |
912 | ||
409d5555 JW |
913 | * doc/xml/manual/build_hacking.xml: New section on shared library |
914 | versioning. | |
915 | ||
a8107a98 JW |
916 | * doc/xml/manual/build_hacking.xml: Improve markup. |
917 | * doc/xml/manual/test.xml: Likewise. Change section title from "Test" | |
918 | to "Testing". | |
919 | * doc/xml/faq.xml: Change link text to "Testing". | |
920 | ||
6cb98491 JW |
921 | * testsuite/tr1/3_function_objects/function/10.cc: Remove unintended |
922 | dg-options directive. | |
923 | ||
657213f7 JW |
924 | 2016-08-17 Jonathan Wakely <jwakely@redhat.com> |
925 | ||
6fbf26cc JW |
926 | * testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do |
927 | directive and use effective target instead of dg-options. | |
928 | ||
18a20f3f JW |
929 | * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Use effective target |
930 | instead of -std in dg-options. | |
931 | * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise. | |
932 | * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise. | |
933 | * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise. | |
934 | * testsuite/20_util/hash/quality.cc: Likewise. | |
935 | * testsuite/25_algorithms/heap/moveable.cc: Likewise. | |
936 | * testsuite/25_algorithms/heap/moveable2.cc: Likewise. | |
937 | * testsuite/25_algorithms/nth_element/random_test.cc: Likewise. | |
938 | * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise. | |
939 | * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise. | |
940 | * testsuite/25_algorithms/sort/random_test.cc: Likewise. | |
941 | ||
f7717203 JW |
942 | * testsuite/20_util/tuple/67844.cc: Require c++11 effective target. |
943 | * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Likewise. | |
944 | * testsuite/27_io/rvalue_streams.cc: Likewise. | |
945 | ||
e30c6e0c JW |
946 | * testsuite/26_numerics/complex/literals/types.cc: Add comment. |
947 | ||
e07f4b00 JW |
948 | * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc: |
949 | Remove duplicate dg-options directive. | |
950 | ||
37144e84 JW |
951 | * testsuite/ext/profile/all.cc: Use effective target instead of |
952 | -std=gnu++11. Use dg-additional-options instead of repeating options. | |
953 | ||
8fe79e73 JW |
954 | * testsuite/20_util/bind/ref_neg.cc: Use effective target instead of |
955 | -std=gnu++11. Add -fno-show-columns to dg-options. Use dg-prune-output | |
956 | instead of dg-excess-errors. | |
957 | ||
c4296692 JW |
958 | * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Disable |
959 | test for C++17. | |
960 | * testsuite/experimental/chrono/value.cc: Avoid ambiguities in C++17. | |
961 | * testsuite/experimental/ratio/value.cc: Likewise. | |
962 | * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Disable test for | |
963 | C++17. | |
964 | * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise. | |
965 | * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise. | |
966 | * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise. | |
967 | * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise. | |
968 | * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise. | |
969 | * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise. | |
970 | * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise. | |
971 | * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise. | |
972 | * testsuite/tr1/5_numerical_facilities/special_functions/ | |
973 | 10_cyl_bessel_k/airy.cc: Adjust namespace of __detail::__airy for | |
974 | C++17 compatibility. | |
975 | ||
ba364478 JW |
976 | * testsuite/24_iterators/headers/iterator/range_access.cc: Adjust |
977 | expected signatures for C++14 compatibility. | |
978 | ||
657213f7 JW |
979 | PR libstdc++/77264 |
980 | * include/bits/basic_string.h (operator=(__sv_type) | |
981 | (append(__sv_type), assign(__sv_type), insert(size_type, __sv_type)) | |
982 | (replace(size_type, size_type, __sv_type)) | |
983 | (replace(const_iterator, const_iterator, __sv_type)) | |
984 | (find(__sv_type, size_type), rfind(__sv_type, size_type)) | |
985 | (compare(size_type, size_type, __sv_type)): Reformat. | |
986 | (_If_sv): Define helper for SFINAE constaints. | |
987 | (append(const _Tp&, size_type, size_type)) | |
988 | (assign(const _Tp&, size_type, size_type)) | |
989 | (insert(size_type, const _Tp&, size_type, size_type)) | |
990 | (replace(size_type, size_type, const _Tp&, size_type, size_type)): | |
991 | Use _If_sv. | |
992 | * testsuite/21_strings/basic_string/modifiers/append/char/4.cc: Test | |
993 | SFINAE constraints. | |
994 | * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc: | |
995 | Likewise. | |
996 | * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc: | |
997 | Likewise. | |
998 | * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc: | |
999 | Likewise. | |
1000 | * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc: | |
1001 | Likewise. | |
1002 | * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc: | |
1003 | Likewise. | |
1004 | * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc: | |
1005 | Likewise. | |
1006 | * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc: | |
1007 | Likewise. | |
1008 | * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc: | |
1009 | Likewise. | |
1010 | * testsuite/21_strings/basic_string/operations/compare/char/2.cc: | |
1011 | Likewise. | |
1012 | * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc: | |
1013 | Likewise. | |
1014 | ||
32917686 JW |
1015 | 2016-08-16 Jonathan Wakely <jwakely@redhat.com> |
1016 | ||
1017 | PR libstdc++/72847 | |
1018 | * include/bits/stl_bvector.h (_Bvector_base::_M_deallocate): Zero | |
1019 | pointers to start and end of storage. | |
1020 | * testsuite/23_containers/vector/bool/72847.cc: New test. | |
1021 | * include/bits/vector.tcc (vector<bool>::_M_reallocate): Only update | |
1022 | _M_finish after deallocating. | |
1023 | (vector<bool>::_M_fill_insert): Likewise. | |
1024 | (vector<bool>::_M_insert_range): Likewise. | |
1025 | (vector<bool>::_M_insert_aux): Likewise. | |
1026 | ||
5c578ae4 VV |
1027 | 2016-08-15 Ville Voutilainen <ville.voutilainen@gmail.com> |
1028 | ||
1029 | Implement LWG 2744 and LWG 2754. | |
1030 | * include/std/any (any(ValueType&&)): Constrain with __is_in_place_type. | |
1031 | (any(in_place_type_t<_ValueType>, _Args&&...)): Use _Decay. | |
1032 | (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)): | |
1033 | Likewise. | |
1034 | (emplace(_Args&&...)): Likewise. | |
1035 | (emplace(initializer_list<_Up>, _Args&&...)): Likewise. | |
1036 | * include/std/utility: (__is_in_place_type_impl): New. | |
1037 | (__is_in_place_type): Likewise. | |
1038 | * testsuite/20_util/any/assign/emplace.cc: Add tests for decaying | |
1039 | emplace. | |
1040 | * testsuite/20_util/any/cons/in_place.cc: Add tests for decaying | |
1041 | in_place constructor. | |
1042 | * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust. | |
1043 | * testsuite/20_util/any/requirements.cc: Add a test for | |
1044 | in_place-constructing a non-default-constructible type. | |
1045 | ||
24299f65 VV |
1046 | 2016-08-15 Ville Voutilainen <ville.voutilainen@gmail.com> |
1047 | ||
1048 | Add a feature macro for C++17 make_from_tuple. | |
1049 | * include/std/tuple (__cpp_lib_make_from_tuple): New. | |
1050 | (__make_from_tuple_impl(_Tuple&&, index_sequence<_Idx...>)): | |
1051 | Qualify the call to get<>(). | |
1052 | * testsuite/20_util/tuple/make_from_tuple/1.cc: Adjust. | |
1053 | ||
0657379e UB |
1054 | 2016-08-15 Uros Bizjak <ubizjak@gmail.com> |
1055 | ||
1056 | * src/filesystem/ops.cc: Always include ostream and | |
1057 | ext/stdio_filebuf.h. | |
1058 | (do_copy_file): Check if _GLIBCXX_USE_FCHMODAT is defined. | |
1059 | [_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case | |
1060 | sendfile fails with ENOSYS or EINVAL. | |
1061 | ||
f9657322 TP |
1062 | 2016-08-15 Thomas Preud'homme <thomas.preudhomme@arm.com> |
1063 | ||
1064 | PR libstdc++/72840 | |
1065 | * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Fix dg-error | |
1066 | syntax. | |
1067 | ||
ca1ab6be VV |
1068 | 2016-08-11 Ville Voutilainen <ville.voutilainen@gmail.com> |
1069 | ||
1070 | Implement C++17 make_from_tuple. | |
1071 | * include/std/tuple (__make_from_tuple_impl, make_from_tuple): New. | |
1072 | * testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise. | |
1073 | ||
68a51b68 VV |
1074 | 2016-08-11 Ville Voutilainen <ville.voutilainen@gmail.com> |
1075 | ||
1076 | Implement LWG 2758. | |
1077 | * include/bits/basic_string.h | |
1078 | (append(__sv_type, size_type, size_type)): Turn into a template, | |
1079 | change parameter type, constrain, add a conversion to __sv_type | |
1080 | from the dependent parameter type. | |
1081 | (assign(__sv_type, size_type, size_type)): Likewise. | |
1082 | (insert(size_type, __sv_type, size_type, size_type)): Likewise. | |
1083 | (replace(size_type, size_type, __sv_type, size_type, size_type)): | |
1084 | Likewise. | |
1085 | (compare(size_type, size_type,__sv_type, size_type, size_type)): | |
1086 | Likewise. | |
1087 | * testsuite/21_strings/basic_string/lwg2758.cc: New. | |
1088 | ||
3e9f67e6 JW |
1089 | 2016-08-06 Jonathan Wakely <jwakely@redhat.com> |
1090 | ||
caee9cde JW |
1091 | * doc/xml/manual/status_cxx2017.xml: Update status table. |
1092 | * doc/html/manual/status.html: Regenerate. | |
1093 | ||
ea2f1f49 JW |
1094 | * testsuite/lib/libstdc++.exp: Fix typo in comment. |
1095 | ||
6ef835c6 JW |
1096 | PR libstdc++/72820 |
1097 | * include/std/functional (_Function_base::_Base_manager::_M_clone): | |
1098 | Qualify new operator. | |
1099 | * testsuite/20_util/function/cons/72820.cc: New test. | |
1100 | ||
3e9f67e6 JW |
1101 | * doc/xml/manual/status_cxx2017.xml: Add missing LFTSv2 features. |
1102 | * doc/html/manual/status.html: Regenerate. | |
1103 | * include/Makefile.am: Add new header. | |
1104 | * include/Makefile.in: Regenerate. | |
1105 | * include/bits/invoke.h: New header. | |
1106 | (__invoke): Make constexpr. Add && to types in exception specification. | |
1107 | * include/experimental/tuple (apply, __apply_impl): Fix non-reserved | |
1108 | names. Include <bits/invoke.h> and use std::__invoke. | |
1109 | * include/std/functional (__invfwd, __invoke_impl, __invoke): Move to | |
1110 | new header. | |
1111 | (invoke): Add && to types in exception specification. | |
1112 | * include/std/tuple (apply, __apply_impl): Define for C++17. | |
1113 | * testsuite/20_util/tuple/apply/1.cc: New test. | |
1114 | * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error | |
1115 | lineno. | |
1116 | ||
98e6e662 JW |
1117 | 2016-08-05 Jonathan Wakely <jwakely@redhat.com> |
1118 | ||
a0b1bf21 JW |
1119 | * doc/xml/manual/status_cxx2017.xml: Correct shared_from_this status. |
1120 | * doc/html/manual/status.html: Regenerate. | |
1121 | ||
5f6acdfb JW |
1122 | * include/std/chrono (floor, ceil, round, abs): New for C++17. |
1123 | * testsuite/20_util/duration_cast/rounding.cc: New test. | |
1124 | * testsuite/20_util/time_point_cast/rounding.cc: New test. | |
1125 | * doc/xml/manual/status_cxx2017.xml: Update status table. | |
1126 | * doc/html/manual/status.html: Regenerate. | |
1127 | * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust | |
1128 | dg-error lineno. | |
1129 | * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise. | |
1130 | * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise. | |
1131 | * testsuite/20_util/duration/literals/range.cc: Likewise. | |
1132 | ||
98e6e662 JW |
1133 | * include/std/functional (__callable_functor): Remove. |
1134 | (_Function_handler::_M_invoke): Use __invoke instead of | |
1135 | __callable_functor or mem_fn. | |
1136 | (function::_Callable): Use lvalue in result_of expression. | |
1137 | (function): Remove TODO comments about allocators. | |
1138 | * testsuite/20_util/function/cons/refqual.cc: New test. | |
1139 | ||
7d2035fa JW |
1140 | 2016-08-04 Jonathan Wakely <jwakely@redhat.com> |
1141 | ||
42183d03 JW |
1142 | * doc/xml/manual/status_cxx2017.xml: Update status table. |
1143 | * include/std/functional (__inv_unwrap): Move to <type_traits>. | |
1144 | (__invoke_impl): Remove exception specifications. | |
1145 | (__invoke, invoke): Add exception specifications using | |
1146 | __is_nothrow_callable. | |
1147 | * include/std/type_traits (__inv_unwrap): Move from <functional>. | |
1148 | (__is_callable_impl, __call_is_nt, __call_is_nothrow): New helpers. | |
1149 | (__is_callable, __is_nothrow_callable): New traits. | |
1150 | (is_callable, is_callable_v): New C++17 traits. | |
1151 | (is_nothrow_callable, is_nothrow_callable_v): Likewise. | |
1152 | * testsuite/20_util/is_callable/requirements/ | |
1153 | explicit_instantiation.cc: New test. | |
1154 | * testsuite/20_util/is_callable/requirements/ | |
1155 | explicit_instantiation_ext.cc: New test. | |
1156 | * testsuite/20_util/is_callable/requirements/typedefs.cc: New test. | |
1157 | * testsuite/20_util/is_callable/requirements/typedefs_ext.cc: New | |
1158 | test. | |
1159 | * testsuite/20_util/is_callable/value.cc: New test. | |
1160 | * testsuite/20_util/is_callable/value_ext.cc: New test. | |
1161 | * testsuite/20_util/is_nothrow_callable/requirements/ | |
1162 | explicit_instantiation.cc: New test. | |
1163 | * testsuite/20_util/is_nothrow_callable/requirements/ | |
1164 | explicit_instantiation_ext.cc: New test. | |
1165 | * testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc: | |
1166 | New test. | |
1167 | * testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc: | |
1168 | New test. | |
1169 | * testsuite/20_util/is_nothrow_callable/value.cc: New test. | |
1170 | * testsuite/20_util/is_nothrow_callable/value_ext.cc: New test. | |
1171 | ||
246c618e JW |
1172 | * doc/xml/manual/status_cxx2017.xml: Update C++17 status table. |
1173 | * doc/html/manual/status.html: Regenerate. | |
1174 | ||
9a8e528c JW |
1175 | * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Use |
1176 | effective target not dg-options. Move check for feature-test macro to: | |
1177 | * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc: | |
1178 | New test. | |
1179 | ||
7d2035fa JW |
1180 | * include/std/functional (_Unwrap): Rename to __inv_unwrap. |
1181 | (__invfwd): Adjust. | |
1182 | (__invoke_impl): Remove unused template parameters. | |
1183 | * testsuite/20_util/function_objects/invoke/59768.cc: Remove unused | |
1184 | parameter. | |
1185 | * testsuite/20_util/function_objects/invoke/ref_ext.cc: Copy 59768.cc | |
1186 | and test __invoke extension for C++11. | |
1187 | ||
27631a25 JW |
1188 | 2016-08-03 Jonathan Wakely <jwakely@redhat.com> |
1189 | ||
c7fdbdcd JW |
1190 | * include/bits/shared_ptr_base.h (__cpp_lib_enable_shared_from_this): |
1191 | Define feature-test macro. | |
1192 | * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Test | |
1193 | for the macro. | |
1194 | ||
f21f4463 JW |
1195 | * include/bits/shared_ptr.h (shared_ptr::weak_type): Define. |
1196 | * include/bits/shared_ptr_base.h (__shared_ptr::weak_type): Define. | |
1197 | * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error. | |
1198 | * testsuite/20_util/shared_ptr/requirements/weak_type.cc: New test. | |
1199 | * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise. | |
1200 | ||
32eaac9c JW |
1201 | * include/std/utility (as_const): Define. |
1202 | * testsuite/20_util/as_const/1.cc: New test. | |
1203 | * testsuite/20_util/as_const/rvalue_neg.cc: New test. | |
1204 | ||
b7dabce5 JW |
1205 | * include/bits/shared_ptr.h (owner_less): Add default template |
1206 | argument. | |
1207 | * include/bits/shared_ptr_base.h (_Sp_owner_less<void, void>): Define | |
1208 | specialization. | |
1209 | (owner_less<void>): Define specialization. | |
1210 | * include/bits/stl_function.h (__cpp_lib_transparent_operators): | |
1211 | Update value. | |
1212 | * testsuite/20_util/owner_less/void.cc: New test. | |
1213 | * testsuite/experimental/feat-cxx14.cc: Update macro value tested. | |
1214 | ||
068c8ac1 JW |
1215 | * include/bits/allocator.h (__cpp_lib_incomplete_container_elements): |
1216 | Define feature-test macro. | |
1217 | * include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise. | |
1218 | * include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment. | |
1219 | * include/std/type_traits (__cpp_lib_logical_traits): Fix value. | |
1220 | (__cpp_lib_type_trait_variable_templates): Define. | |
1221 | ||
0bd9bdb4 JW |
1222 | * include/bits/stl_function.h: Remove commented-out macro. |
1223 | * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup): | |
1224 | Define feature-test macro. | |
1225 | * testsuite/experimental/feat-cxx14.cc: Add tests for more macros. | |
1226 | ||
f8571e51 JW |
1227 | * include/bits/c++config (_GLIBCXX_USE_STD_SPEC_FUNCS): Define for |
1228 | C++17, or for C++11/C++14 when __STDCPP_WANT_MATH_SPEC_FUNCS__ is | |
1229 | true. | |
1230 | * include/bits/specfun.h [!__STDCPP_WANT_MATH_SPEC_FUNCS__]: Don't | |
1231 | do #error for C++17. | |
1232 | * include/c_global/cmath: Check _GLIBCXX_USE_STD_SPEC_FUNCS instead | |
1233 | of __STDCPP_WANT_MATH_SPEC_FUNCS__. | |
1234 | * include/tr1/bessel_function.tcc: Likewise. | |
1235 | * include/tr1/beta_function.tcc: Likewise. | |
1236 | * include/tr1/cmath: Likewise. | |
1237 | * include/tr1/ell_integral.tcc: Likewise. | |
1238 | * include/tr1/exp_integral.tcc: Likewise. | |
1239 | * include/tr1/gamma.tcc: Likewise. | |
1240 | * include/tr1/hypergeometric.tcc: Likewise. | |
1241 | * include/tr1/legendre_function.tcc: Likewise. | |
1242 | * include/tr1/modified_bessel_func.tcc: Likewise. | |
1243 | * include/tr1/poly_hermite.tcc: Likewise. | |
1244 | * include/tr1/poly_laguerre.tcc: Likewise. | |
1245 | * include/tr1/riemann_zeta.tcc: Likewise. | |
1246 | * include/tr1/special_function_util.h: Likewise. | |
1247 | * testsuite/26_numerics/headers/cmath/functions_std_c++17.cc: New. | |
1248 | ||
27631a25 JW |
1249 | * include/std/type_traits (has_trivial_default_constructor): Remove. |
1250 | (has_trivial_copy_constructor, has_trivial_copy_assign): Likewise. | |
1251 | * testsuite/20_util/has_trivial_copy_assign/requirements/ | |
1252 | explicit_instantiation.cc: Remove test. | |
1253 | * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error | |
1254 | line number. | |
1255 | * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc: | |
1256 | Likewise. | |
1257 | * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise. | |
1258 | * testsuite/20_util/has_trivial_copy_constructor/requirements/ | |
1259 | explicit_instantiation.cc: Likewise. | |
1260 | * testsuite/20_util/has_trivial_copy_constructor/requirements/ | |
1261 | typedefs.cc: Likewise. | |
1262 | * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise. | |
1263 | * testsuite/20_util/has_trivial_default_constructor/requirements/ | |
1264 | explicit_instantiation.cc: Likewise. | |
1265 | * testsuite/20_util/has_trivial_default_constructor/requirements/ | |
1266 | typedefs.cc: Likewise. | |
1267 | * testsuite/20_util/has_trivial_default_constructor/value.cc: | |
1268 | Likewise. | |
1269 | * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc: | |
1270 | Check has_trivial_default_constructor, has_trivial_copy_constructor, | |
1271 | and has_trivial_copy_assign are not defined. | |
1272 | * testsuite/20_util/pair/requirements/dr801.cc: Remove commented out | |
1273 | tests. | |
1274 | * testsuite/20_util/tuple/requirements/dr801.cc: Likewise. | |
1275 | * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust | |
1276 | dg-error line number. | |
1277 | * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: | |
1278 | Likewise. | |
1279 | ||
69332dba JW |
1280 | 2016-08-02 Jonathan Wakely <jwakely@redhat.com> |
1281 | ||
589a30d1 JW |
1282 | * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc: |
1283 | Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type. | |
1284 | * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc: | |
1285 | Likewise. | |
1286 | * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc: | |
1287 | Likewise. | |
1288 | * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc: | |
1289 | Likewise. | |
1290 | * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc: | |
1291 | Likewise. | |
1292 | * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc: | |
1293 | Likewise. | |
1294 | * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc: | |
1295 | Likewise. | |
1296 | ||
8bcd00bb JW |
1297 | * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve |
1298 | comments. | |
1299 | ||
a4e1011c JW |
1300 | * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Move |
1301 | dg-error to relevant line. | |
1302 | * testsuite/19_diagnostics/error_condition/operators/bool_neg.cc: | |
1303 | Likewise. | |
1304 | * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise. | |
1305 | ||
64dde682 JW |
1306 | * scripts/testsuite_flags.in: Add -fno-show-column to cxxflags. |
1307 | ||
807bd096 JW |
1308 | * testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if |
1309 | options are present that aren't valid for C. | |
1310 | * testsuite/abi/header_cxxabi.c: Likewise. | |
1311 | ||
8c65cd30 JW |
1312 | * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/ |
1313 | check_value.cc: Do not add special functions to namespace std in TR1 | |
1314 | test. | |
1315 | ||
196c9e7a JW |
1316 | * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Only |
1317 | run for C++11 and later. | |
1318 | * testsuite/ext/special_functions/conf_hyperg/check_value.cc: | |
1319 | Likewise. | |
1320 | * testsuite/ext/special_functions/conf_hyperg/compile.cc: Likewise. | |
1321 | * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise. | |
1322 | * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise. | |
1323 | * testsuite/ext/special_functions/hyperg/compile.cc: Likewise. | |
1324 | * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: | |
1325 | Likewise. | |
1326 | * testsuite/special_functions/01_assoc_laguerre/check_value.cc: | |
1327 | Likewise. | |
1328 | * testsuite/special_functions/01_assoc_laguerre/compile.cc: Likewise. | |
1329 | * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: | |
1330 | Likewise. | |
1331 | * testsuite/special_functions/02_assoc_legendre/check_nan.cc: | |
1332 | Likewise. | |
1333 | * testsuite/special_functions/02_assoc_legendre/check_value.cc: | |
1334 | Likewise. | |
1335 | * testsuite/special_functions/02_assoc_legendre/compile.cc: Likewise. | |
1336 | * testsuite/special_functions/02_assoc_legendre/compile_2.cc: | |
1337 | * testsuite/special_functions/03_beta/check_nan.cc: Likewise. | |
1338 | * testsuite/special_functions/03_beta/check_value.cc: Likewise. | |
1339 | * testsuite/special_functions/03_beta/compile.cc: Likewise. | |
1340 | * testsuite/special_functions/03_beta/compile_2.cc: Likewise. | |
1341 | * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise. | |
1342 | * testsuite/special_functions/04_comp_ellint_1/check_value.cc: | |
1343 | Likewise. | |
1344 | * testsuite/special_functions/04_comp_ellint_1/compile.cc: Likewise. | |
1345 | * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Likewise. | |
1346 | * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise. | |
1347 | * testsuite/special_functions/05_comp_ellint_2/check_value.cc: | |
1348 | Likewise. | |
1349 | * testsuite/special_functions/05_comp_ellint_2/compile.cc: Likewise. | |
1350 | * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Likewise. | |
1351 | * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise. | |
1352 | * testsuite/special_functions/06_comp_ellint_3/check_value.cc: | |
1353 | Likewise. | |
1354 | * testsuite/special_functions/06_comp_ellint_3/compile.cc: Likewise. | |
1355 | * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Likewise. | |
1356 | * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise. | |
1357 | * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: | |
1358 | Likewise. | |
1359 | * testsuite/special_functions/07_cyl_bessel_i/compile.cc: Likewise. | |
1360 | * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Likewise. | |
1361 | * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise. | |
1362 | * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise. | |
1363 | * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: | |
1364 | Likewise. | |
1365 | * testsuite/special_functions/08_cyl_bessel_j/compile.cc: Likewise. | |
1366 | * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Likewise. | |
1367 | * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise. | |
1368 | * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: | |
1369 | Likewise. | |
1370 | * testsuite/special_functions/09_cyl_bessel_k/compile.cc: Likewise. | |
1371 | * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Likewise. | |
1372 | * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise. | |
1373 | * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise. | |
1374 | * testsuite/special_functions/10_cyl_neumann/compile.cc: Likewise. | |
1375 | * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Likewise. | |
1376 | * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise. | |
1377 | * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise. | |
1378 | * testsuite/special_functions/11_ellint_1/compile.cc: Likewise. | |
1379 | * testsuite/special_functions/11_ellint_1/compile_2.cc: Likewise. | |
1380 | * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise. | |
1381 | * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise. | |
1382 | * testsuite/special_functions/12_ellint_2/compile.cc: Likewise. | |
1383 | * testsuite/special_functions/12_ellint_2/compile_2.cc: Likewise. | |
1384 | * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise. | |
1385 | * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise. | |
1386 | * testsuite/special_functions/13_ellint_3/compile.cc: Likewise. | |
1387 | * testsuite/special_functions/13_ellint_3/compile_2.cc: Likewise. | |
1388 | * testsuite/special_functions/14_expint/check_nan.cc: Likewise. | |
1389 | * testsuite/special_functions/14_expint/check_value.cc: Likewise. | |
1390 | * testsuite/special_functions/14_expint/compile.cc: Likewise. | |
1391 | * testsuite/special_functions/14_expint/compile_2.cc: Likewise. | |
1392 | * testsuite/special_functions/15_hermite/check_nan.cc: Likewise. | |
1393 | * testsuite/special_functions/15_hermite/check_value.cc: Likewise. | |
1394 | * testsuite/special_functions/15_hermite/compile.cc: Likewise. | |
1395 | * testsuite/special_functions/15_hermite/compile_2.cc: Likewise. | |
1396 | * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise. | |
1397 | * testsuite/special_functions/16_laguerre/check_value.cc: Likewise. | |
1398 | * testsuite/special_functions/16_laguerre/compile.cc: Likewise. | |
1399 | * testsuite/special_functions/16_laguerre/compile_2.cc: Likewise. | |
1400 | * testsuite/special_functions/17_legendre/check_nan.cc: Likewise. | |
1401 | * testsuite/special_functions/17_legendre/check_value.cc: Likewise. | |
1402 | * testsuite/special_functions/17_legendre/compile.cc: Likewise. | |
1403 | * testsuite/special_functions/17_legendre/compile_2.cc: Likewise. | |
1404 | * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise. | |
1405 | * testsuite/special_functions/18_riemann_zeta/check_value.cc: | |
1406 | Likewise. | |
1407 | * testsuite/special_functions/18_riemann_zeta/compile.cc: Likewise. | |
1408 | * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Likewise. | |
1409 | * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise. | |
1410 | * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise. | |
1411 | * testsuite/special_functions/19_sph_bessel/compile.cc: Likewise. | |
1412 | * testsuite/special_functions/19_sph_bessel/compile_2.cc: Likewise. | |
1413 | * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise. | |
1414 | * testsuite/special_functions/20_sph_legendre/check_value.cc: | |
1415 | Likewise. | |
1416 | * testsuite/special_functions/20_sph_legendre/compile.cc: Likewise. | |
1417 | * testsuite/special_functions/20_sph_legendre/compile_2.cc: Likewise. | |
1418 | * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise. | |
1419 | * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise. | |
1420 | * testsuite/special_functions/21_sph_neumann/compile.cc: Likewise. | |
1421 | * testsuite/special_functions/21_sph_neumann/compile_2.cc: Likewise. | |
1422 | ||
69332dba JW |
1423 | * testsuite/tr1/5_numerical_facilities/special_functions/ |
1424 | 08_cyl_bessel_i/check_value.cc: Use __attribute__((unused)) instead | |
1425 | of [[gnu::unused]]. | |
1426 | * testsuite/tr1/5_numerical_facilities/special_functions/ | |
1427 | 09_cyl_bessel_j/check_value.cc: Likewise. | |
1428 | * testsuite/tr1/5_numerical_facilities/special_functions/ | |
1429 | 10_cyl_bessel_k/check_value.cc: Likewise. | |
1430 | * testsuite/tr1/5_numerical_facilities/special_functions/ | |
1431 | 11_cyl_neumann/check_value.cc: Likewise. | |
1432 | * testsuite/tr1/5_numerical_facilities/special_functions/ | |
1433 | 21_sph_bessel/check_value.cc: Likewise. | |
1434 | * testsuite/tr1/5_numerical_facilities/special_functions/ | |
1435 | 23_sph_neumann/check_value.cc: Likewise. | |
1436 | ||
e1539627 RO |
1437 | 2016-08-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
1438 | ||
1439 | * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate. | |
1440 | * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise. | |
1441 | * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise. | |
1442 | * config/abi/post/solaris2.11/baseline_symbols.txt: Likewise. | |
1443 | * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise. | |
1444 | * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise. | |
1445 | ||
c1b6948e JW |
1446 | 2016-08-02 Jonathan Wakely <jwakely@redhat.com> |
1447 | ||
e877144d JW |
1448 | * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Skip |
1449 | test if -flto used. | |
1450 | ||
c1b6948e JW |
1451 | * testsuite/lib/libstdc++.exp (v3-build_support): Add -fno-lto to |
1452 | additional flags for compiling libtestc++.a objects. | |
1453 | ||
9b46e4d6 JW |
1454 | 2016-08-01 Jonathan Wakely <jwakely@redhat.com> |
1455 | ||
92d58dee JW |
1456 | * include/bits/basic_string.h (data() const): Update comment. |
1457 | (data()): Add non-const overload for C++17. | |
1458 | * testsuite/21_strings/basic_string/operations/data/char/2.cc: New. | |
1459 | * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New. | |
1460 | ||
0f86525a JW |
1461 | * include/bits/basic_string.tcc: Disable explicit instantiation |
1462 | declarations for C++17. | |
1463 | ||
9839ff60 JW |
1464 | * testsuite/23_containers/unordered_map/requirements/53339.cc: Remove |
1465 | ignored "xfail" from { dg-do compile { xfail selector } } directive. | |
1466 | * testsuite/23_containers/unordered_multimap/requirements/53339.cc: | |
1467 | Likewise. | |
1468 | * testsuite/26_numerics/headers/cmath/ | |
1469 | c99_classification_macros_c++11.cc: Likewise. | |
1470 | * testsuite/26_numerics/headers/cmath/ | |
1471 | c99_classification_macros_c++98.cc: Likewise. | |
1472 | * testsuite/26_numerics/headers/cmath/ | |
1473 | c99_classification_macros_c.cc: Likewise. | |
1474 | ||
cbcc9fe8 JW |
1475 | * testsuite/backward/hash_set/check_construct_destroy.cc: Account |
1476 | for different construct/destroy counts in C++98 mode. | |
1477 | ||
74811472 JW |
1478 | * testsuite/17_intro/freestanding.cc: Remove "-x c" from dg-options. |
1479 | ||
a02a61ee JW |
1480 | * testsuite/20_util/tuple/cons/66338.cc: Limit test to C++11 and |
1481 | later. | |
1482 | * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: | |
1483 | Likewise. | |
1484 | ||
98b5fb3c JW |
1485 | * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use |
1486 | C++98-compatible initialization for array. | |
1487 | ||
6f3b8891 JW |
1488 | * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Remove |
1489 | unused header and variable from compile-only test. | |
1490 | * testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise. | |
1491 | * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise. | |
1492 | * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise. | |
1493 | * testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc: | |
1494 | Likewise. | |
1495 | ||
2ab794eb JW |
1496 | * testsuite/experimental/string_view/operations/rfind/char/2.cc: |
1497 | Remove duplicate dg-options directive. | |
1498 | ||
4d16871b JW |
1499 | * testsuite/20_util/specialized_algorithms/uninitialized_copy/ |
1500 | 808590.cc: Use -std=gnu++98 instead of -std=gnu++03. | |
1501 | ||
e3509835 JW |
1502 | * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Remove |
1503 | linker options from compile-only tests. | |
1504 | * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: | |
1505 | Likewise. | |
1506 | ||
9b46e4d6 JW |
1507 | * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test |
1508 | supported for C++11 and later. | |
1509 | * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise. | |
1510 | * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise. | |
1511 | ||
77c3c27e UB |
1512 | 2016-08-01 Uros Bizjak <ubizjak@gmail.com> |
1513 | ||
1514 | * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update. | |
1515 | ||
f245e3a0 JW |
1516 | 2016-07-31 Jonathan Wakely <jwakely@redhat.com> |
1517 | ||
c4da1da2 JW |
1518 | * testsuite/20_util/conditional/requirements/typedefs.cc: Change to |
1519 | compile-only test. | |
1520 | ||
9d5b70b0 JW |
1521 | * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: |
1522 | Ensure test is compiled with optimization. | |
1523 | ||
ee628057 JW |
1524 | * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: |
1525 | Adjust dg-prune-output pattern for error in C++98 mode. | |
1526 | ||
d23d1bee JW |
1527 | * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Only |
1528 | run for C++11 or later. | |
1529 | ||
f2738d6c JW |
1530 | * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Fix |
1531 | test to not rely on GNU extension (escaped normal characters in POSIX | |
1532 | BRE). Enable tests for other strings which are now supported. | |
1533 | ||
77f3d979 JW |
1534 | * testsuite/20_util/pair/astuple/get_neg.cc: Use effective-target |
1535 | c++11 instead of setting -std=gnu++14. | |
1536 | ||
3c040fa4 JW |
1537 | PR libstdc++/72745 |
1538 | * include/std/array (get): Use positive message for static assertions. | |
1539 | * include/std/functional (_Safe_tuple_element_t): Fix indentation. | |
1540 | * include/std/tuple (tuple_element<I, tuple<>>): Add partial | |
1541 | specialization for invalid indices, with static assertion. | |
1542 | * testsuite/20_util/tuple/element_access/get_neg.cc: New test. | |
1543 | ||
f245e3a0 JW |
1544 | * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Move |
1545 | dg-error to relevant line. | |
1546 | * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc: | |
1547 | Likewise. | |
1548 | * testsuite/23_containers/forward_list/requirements/dr438/ | |
1549 | assign_neg.cc: Likewise. | |
1550 | * testsuite/23_containers/forward_list/requirements/dr438/ | |
1551 | constructor_1_neg.cc: Likewise. | |
1552 | * testsuite/23_containers/forward_list/requirements/dr438/ | |
1553 | constructor_2_neg.cc: Likewise. | |
1554 | * testsuite/23_containers/forward_list/requirements/dr438/ | |
1555 | insert_neg.cc: Likewise. | |
1556 | * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: | |
1557 | Likewise. | |
1558 | * testsuite/26_numerics/random/linear_congruential_engine/ | |
1559 | requirements/non_uint_neg.cc: Likewise. | |
1560 | * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: | |
1561 | Likewise. Also test for std::atomic_address. | |
1562 | ||
8c914227 VV |
1563 | 2016-07-31 Ville Voutilainen <ville.voutilainen@gmail.com> |
1564 | ||
1565 | Add missing variable traits, fix testsuite failures. | |
1566 | * include/bits/uses_allocator.h (uses_allocator_v): New. | |
1567 | * include/std/functional (is_bind_expression_v, is_placeholder_v): | |
1568 | Likewise. | |
1569 | * testsuite/20_util/bind/is_placeholder_v.cc: Likewise. | |
1570 | * testsuite/20_util/declval/requirements/1_neg.cc: Adjust. | |
1571 | * testsuite/20_util/duration/literals/range.cc: Likewise. | |
1572 | * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise. | |
1573 | * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise. | |
1574 | * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise. | |
1575 | * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. | |
1576 | * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: | |
1577 | Likewise. | |
1578 | * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. | |
1579 | * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc: | |
1580 | New. | |
1581 | ||
7523c5eb JW |
1582 | 2016-07-31 Jonathan Wakely <jwakely@redhat.com> |
1583 | ||
2f297149 JW |
1584 | * testsuite/18_support/numeric_limits/40856.cc [__STRICT_ANSI__]: Do |
1585 | not test 128-bit types. | |
1586 | * testsuite/20_util/is_floating_point/value.cc: Likewise. | |
1587 | * testsuite/20_util/is_integral/value.cc: Likewise. | |
1588 | * testsuite/20_util/is_signed/value.cc: Likewise. | |
1589 | * testsuite/20_util/is_unsigned/value.cc: Likewise. | |
1590 | * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise. | |
1591 | * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise. | |
1592 | * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: | |
1593 | Likewise. | |
1594 | * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: | |
1595 | Likewise. | |
1596 | ||
7523c5eb JW |
1597 | * testsuite/26_numerics/headers/cstdlib/54686.c: Rename to 54686.cc. |
1598 | ||
137422c8 VV |
1599 | 2016-07-29 Ville Voutilainen <ville.voutilainen@gmail.com> |
1600 | ||
1601 | Implement C++17 variable templates for type traits. | |
1602 | * include/std/chrono (treat_as_floating_point_v): New. | |
1603 | * include/std/ratio (ratio_equal_v, ratio_not_equal_v) | |
1604 | (ratio_less_v, ratio_less_equal_v, ratio_greater_v) | |
1605 | (ratio_greater_equal_v): Likewise. | |
1606 | * include/std/system_error (is_error_code_enum_v) | |
1607 | (is_error_condition_enum_v): Likewise. | |
1608 | * include/std/tuple (tuple_size_v): Likewise. | |
1609 | * type_traits (conjunction_v, disjunction_v, negation_v) | |
1610 | (is_void_v, is_null_pointer_v, is_integral_v, is_floating_point_v) | |
1611 | (is_array_v, is_pointer_v, is_lvalue_reference_v) | |
1612 | (is_rvalue_reference_v, is_member_object_pointer_v) | |
1613 | (is_member_function_pointer_v, is_enum_v, is_union_v) | |
1614 | (is_class_v, is_function_v, is_reference_v, is_arithmetic_v) | |
1615 | (is_fundamental_v, is_object_v, is_scalar_v, is_compound_v) | |
1616 | (is_member_pointer_v, is_const_v, is_volatile_v, is_trivial_v) | |
1617 | (is_trivially_copyable_v, is_standard_layout_v) | |
1618 | (is_pod_v, is_literal_type_v, is_empty_v, is_polymorphic_v) | |
1619 | (is_abstract_v, is_final_v, is_signed_v, is_unsigned_v) | |
1620 | (is_constructible_v, is_default_constructible_v) | |
1621 | (is_copy_constructible_v, is_move_constructible_v) | |
1622 | (is_assignable_v, is_copy_assignable_v, is_move_assignable_v) | |
1623 | (is_destructible_v, is_trivially_constructible_v) | |
1624 | (is_trivially_default_constructible_v) | |
1625 | (is_trivially_copy_constructible_v, is_trivially_move_constructible_v) | |
1626 | (is_trivially_assignable_v, is_trivially_copy_assignable_v) | |
1627 | (is_trivially_move_assignable_v, is_trivially_destructible_v) | |
1628 | (is_nothrow_constructible_v, is_nothrow_default_constructible_v) | |
1629 | (is_nothrow_copy_constructible_v, is_nothrow_move_constructible_v) | |
1630 | (is_nothrow_assignable_v, is_nothrow_copy_assignable_v) | |
1631 | (is_nothrow_move_assignable_v, is_nothrow_destructible_v) | |
1632 | (has_virtual_destructor_v, alignment_of_v, rank_v, extent_v) | |
1633 | (is_same_v, is_base_of_v, is_convertible_v): Likewise. | |
1634 | * testsuite/19_diagnostics/error_code/is_error_code_v.cc: Likewise. | |
1635 | * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc: | |
1636 | Likewise. | |
1637 | * testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise. | |
1638 | * testsuite/20_util/tuple/tuple_size_v.cc: Likewise. | |
1639 | * testsuite/20_util/variable_templates_for_traits.cc: Likewise. | |
1640 | ||
0c4c4909 AS |
1641 | 2016-07-29 Andreas Schwab <schwab@linux-m68k.org> |
1642 | ||
1643 | * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update. | |
1644 | * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update. | |
1645 | * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update. | |
1646 | ||
fe97ccec JW |
1647 | 2016-07-29 Jonathan Wakely <jwakely@redhat.com> |
1648 | ||
13ec6e5e JW |
1649 | * doc/xml/manual/abi.xml: Document 6.0.22 library version. |
1650 | * doc/html/manual/abi.html: Regenerate. | |
1651 | ||
62589e99 JW |
1652 | * acinclude.m4 (libtool_VERSION): Bump to 6:23:0. |
1653 | * config/abi/pre/gnu.ver: Add 3.4.23 version for new basic_string | |
1654 | symbols. | |
1655 | * configure: Regenerate. | |
1656 | * testsuite/util/testsuite_abi.cc: Add new symbol version. | |
1657 | ||
fe97ccec JW |
1658 | * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update. |
1659 | * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise. | |
1660 | * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise. | |
1661 | * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: | |
1662 | Likewise. | |
1663 | * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise. | |
1664 | * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise. | |
1665 | * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise. | |
1666 | ||
2de6b254 JW |
1667 | 2016-07-28 Jonathan Wakely <jwakely@redhat.com> |
1668 | ||
1a2196e4 JW |
1669 | * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: |
1670 | Adjust dg-prune-output pattern for error in C++98 mode. | |
1671 | * testsuite/23_containers/deque/requirements/dr438/ | |
1672 | constructor_1_neg.cc: Likewise. | |
1673 | * testsuite/23_containers/deque/requirements/dr438/ | |
1674 | constructor_2_neg.cc: Likewise. | |
1675 | * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: | |
1676 | Likewise. | |
1677 | * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: | |
1678 | Likewise. | |
1679 | * testsuite/23_containers/list/requirements/dr438/ | |
1680 | constructor_1_neg.cc: Likewise. | |
1681 | * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: | |
1682 | Likewise. | |
1683 | * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: | |
1684 | Likewise. | |
1685 | * testsuite/23_containers/vector/requirements/dr438/ | |
1686 | constructor_1_neg.cc: Likewise. | |
1687 | * testsuite/23_containers/vector/requirements/dr438/ | |
1688 | constructor_2_neg.cc: Likewise. | |
1689 | * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: | |
1690 | Likewise. | |
1691 | ||
e539b4ff JW |
1692 | * testsuite/23_containers/vector/check_construct_destroy.cc: Account |
1693 | for different construct/destroy counts in C++98 mode. | |
1694 | ||
c3c2f973 JW |
1695 | * testsuite/17_intro/headers/c++2011/stdc++.cc: Change target-specific |
1696 | dg-options to dg-additional-options so that default options are used. | |
1697 | * testsuite/17_intro/headers/c++2011/stdc++_multiple_inclusion.cc: | |
1698 | Likewise. | |
1699 | * testsuite/17_intro/headers/c++2014/stdc++.cc: Likewise. | |
1700 | * testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc: | |
1701 | Likewise. | |
1702 | * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: | |
1703 | Use dg-additional-options instead of repeating the common options. | |
1704 | ||
2de6b254 JW |
1705 | * testsuite/22_locale/conversions/string/1.cc: Remove unintended |
1706 | dg-do compile directive. | |
1707 | * testsuite/26_numerics/headers/cmath/fabs_inline.cc: Fix syntax of | |
1708 | dg-do directive. | |
1709 | * testsuite/26_numerics/valarray/const_bracket.cc: Likewise. | |
1710 | ||
ca8f2cb1 VV |
1711 | 2016-07-28 Ville Voutilainen <ville.voutilainen@gmail.com> |
1712 | ||
1713 | Implement std::string_view and P0254r2, | |
1714 | Integrating std::string_view and std::string. | |
1715 | * include/Makefile.am: Add string_view and string_view.tcc | |
1716 | to the exported headers. | |
1717 | * include/Makefile.in: Likewise. | |
1718 | * include/bits/basic_string.h: Include <string_view> in C++17 mode. | |
1719 | (__sv_type): New. | |
1720 | (basic_string(__sv_type, const _Alloc&)): Likewise. | |
1721 | (operator=(__sv_type)): Likewise. | |
1722 | (operator __sv_type()): Likewise. | |
1723 | (operator+=(__sv_type)): Likewise. | |
1724 | (append(__sv_type __sv)): Likewise. | |
1725 | (append(__sv_type, size_type, size_type)): Likewise. | |
1726 | (assign(__sv_type)): Likewise. | |
1727 | (assign(__sv_type, size_type, size_type)): Likewise. | |
1728 | (insert(size_type, __sv_type)): Likewise. | |
1729 | (insert(size_type, __sv_type, size_type, size_type)): Likewise. | |
1730 | (replace(size_type, size_type, __sv_type)): Likewise. | |
1731 | (replace(size_type, size_type, __sv_type, size_type, size_type)): | |
1732 | Likewise. | |
1733 | (replace(const_iterator, const_iterator, __sv_type)): Likewise. | |
1734 | (find(__sv_type, size_type)): Likewise. | |
1735 | (rfind(__sv_type, size_type)): Likewise. | |
1736 | (find_first_of(__sv_type, size_type)): Likewise. | |
1737 | (find_last_of(__sv_type, size_type)): Likewise. | |
1738 | (find_first_not_of(__sv_type, size_type)): Likewise. | |
1739 | (find_last_not_of(__sv_type, size_type)): Likewise. | |
1740 | (compare(__sv_type)): Likewise. | |
1741 | (compare(size_type, size_type, __sv_type)): Likewise. | |
1742 | (compare(size_type, size_type, __sv_type, size_type, size_type)): | |
1743 | Likewise. | |
1744 | * include/bits/string_view.tcc: New. | |
1745 | * include/std/string_view: Likewise. | |
1746 | * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise. | |
1747 | * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise. | |
1748 | * testsuite/21_strings/basic_string/modifiers/append/char/4.cc: | |
1749 | Likewise. | |
1750 | * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc: | |
1751 | Likewise. | |
1752 | * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc: | |
1753 | Likewise. | |
1754 | * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc: | |
1755 | Likewise. | |
1756 | * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc: | |
1757 | Likewise. | |
1758 | * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc: | |
1759 | Likewise. | |
1760 | * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc: | |
1761 | Likewise. | |
1762 | * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc: | |
1763 | Likewise. | |
1764 | * testsuite/21_strings/basic_string/operations/compare/char/2.cc: | |
1765 | Likewise. | |
1766 | * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc: | |
1767 | Likewise. | |
1768 | * testsuite/21_strings/basic_string/operations/find/char/5.cc: | |
1769 | Likewise. | |
1770 | * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc: | |
1771 | Likewise. | |
1772 | * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise. | |
1773 | * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise. | |
1774 | * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise. | |
1775 | * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise. | |
1776 | * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise. | |
1777 | * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise. | |
1778 | * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise. | |
1779 | * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise. | |
1780 | * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise. | |
1781 | * testsuite/21_strings/basic_string_view/element_access/char/1.cc: | |
1782 | Likewise. | |
1783 | * testsuite/21_strings/basic_string_view/element_access/char/2.cc: | |
1784 | Likewise. | |
1785 | * testsuite/21_strings/basic_string_view/element_access/char/empty.cc: | |
1786 | Likewise. | |
1787 | * testsuite/21_strings/basic_string_view/element_access/char/front_back.cc: | |
1788 | Likewise. | |
1789 | * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc: | |
1790 | Likewise. | |
1791 | * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc: | |
1792 | Likewise. | |
1793 | * testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc: | |
1794 | Likewise. | |
1795 | * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc: | |
1796 | Likewise. | |
1797 | * testsuite/21_strings/basic_string_view/include.cc: Likewise. | |
1798 | * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise. | |
1799 | * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise. | |
1800 | * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise. | |
1801 | * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc: | |
1802 | Likewise. | |
1803 | * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc: | |
1804 | Likewise. | |
1805 | * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc: | |
1806 | Likewise. | |
1807 | * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc: | |
1808 | Likewise. | |
1809 | * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc: | |
1810 | Likewise. | |
1811 | * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: | |
1812 | Likewise. | |
1813 | * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc: | |
1814 | Likewise. | |
1815 | * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: | |
1816 | Likewise. | |
1817 | * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc: | |
1818 | Likewise. | |
1819 | * testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc: | |
1820 | Likewise. | |
1821 | * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc: | |
1822 | Likewise. | |
1823 | * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc: | |
1824 | Likewise. | |
1825 | * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc: | |
1826 | Likewise. | |
1827 | * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc: | |
1828 | Likewise. | |
1829 | * testsuite/21_strings/basic_string_view/operations/data/char/1.cc: | |
1830 | Likewise. | |
1831 | * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc: | |
1832 | Likewise. | |
1833 | * testsuite/21_strings/basic_string_view/operations/find/char/1.cc: | |
1834 | Likewise. | |
1835 | * testsuite/21_strings/basic_string_view/operations/find/char/2.cc: | |
1836 | Likewise. | |
1837 | * testsuite/21_strings/basic_string_view/operations/find/char/3.cc: | |
1838 | Likewise. | |
1839 | * testsuite/21_strings/basic_string_view/operations/find/char/4.cc: | |
1840 | Likewise. | |
1841 | * testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc: | |
1842 | Likewise. | |
1843 | * testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc: | |
1844 | Likewise. | |
1845 | * testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc: | |
1846 | Likewise. | |
1847 | * testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc: | |
1848 | Likewise. | |
1849 | * testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc: | |
1850 | Likewise. | |
1851 | * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc: | |
1852 | Likewise. | |
1853 | * testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc: | |
1854 | Likewise. | |
1855 | * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc: | |
1856 | Likewise. | |
1857 | * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc: | |
1858 | Likewise. | |
1859 | * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc: | |
1860 | Likewise. | |
1861 | * testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc: | |
1862 | Likewise. | |
1863 | * testsuite/21_strings/basic_string_view/operations/substr/char/1.cc: | |
1864 | Likewise. | |
1865 | * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc: | |
1866 | Likewise. | |
1867 | * testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise. | |
1868 | * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc: | |
1869 | Likewise. | |
1870 | * testsuite/21_strings/basic_string_view/range_access/char/1.cc: | |
1871 | Likewise. | |
1872 | * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc: | |
1873 | Likewise. | |
1874 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc: | |
1875 | Likewise. | |
1876 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc: | |
1877 | Likewise. | |
1878 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: | |
1879 | Likewise. | |
1880 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: | |
1881 | Likewise. | |
1882 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: | |
1883 | Likewise. | |
1884 | * testsuite/21_strings/basic_string_view/requirements/typedefs.cc: | |
1885 | Likewise. | |
1886 | * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise. | |
1887 | * testsuite/21_strings/basic_string_view/types/1.cc: Likewise. | |
1888 | ||
427f68c6 JW |
1889 | 2016-07-27 Jonathan Wakely <jwakely@redhat.com> |
1890 | ||
1891 | * testsuite/20_util/forward/1_neg.cc: Move dg-error to right line. | |
1892 | ||
a837417c GC |
1893 | 2016-07-25 Georeth Chow <georeth2010@gmail.com> |
1894 | ||
1895 | * include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify | |
1896 | _S_concat enumerator. | |
1897 | * testsuite/ext/rope/6.cc: New test. | |
1898 | ||
19bb30c0 JW |
1899 | 2016-07-25 Jonathan Wakely <jwakely@redhat.com> |
1900 | ||
1901 | * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use | |
1902 | std::mt19937, std::thread and std::atomic to simplify test. | |
1903 | * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise. | |
1904 | ||
960637ac JW |
1905 | 2016-07-22 Jonathan Wakely <jwakely@redhat.com> |
1906 | ||
8cab3d18 JW |
1907 | PR libstdc++/71964 |
1908 | * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] | |
1909 | (basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor. | |
1910 | * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator. | |
1911 | * testsuite/21_strings/basic_string/allocator/71964.cc: New test. | |
1912 | * testsuite/23_containers/set/allocator/71964.cc: New test. | |
1913 | ||
960637ac JW |
1914 | * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use |
1915 | delete[] instead of delete. | |
1916 | ||
22620c14 JW |
1917 | 2016-07-21 Jonathan Wakely <jwakely@redhat.com> |
1918 | ||
8b649cd3 JW |
1919 | * include/experimental/propagate_const (propagate_const::__t): Rename |
1920 | to _M_t and remove comment. Qualify std::move and std::forward. | |
1921 | * testsuite/experimental/propagate_const/cons/default.cc: Fix test. | |
1922 | ||
509b778f JW |
1923 | * testsuite/23_containers/vector/zero_sized_allocations.cc: |
1924 | Define sized deallocation function. | |
1925 | * testsuite/util/testsuite_new_operators.h: | |
1926 | (operator delete(void*, const std::nothrow_t&)): Define nothrow | |
1927 | deallocation function. | |
1928 | ||
e93a101f JW |
1929 | * testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix |
1930 | reads past the end of strings. | |
1931 | * testsuite/21_strings/basic_string/operations/compare/char/1.cc: | |
1932 | Likewise. | |
1933 | * testsuite/21_strings/char_traits/requirements/short/1.cc: Fix | |
1934 | invalid array accesses. | |
1935 | * testsuite/experimental/string_view/operations/compare/char/1.cc: | |
1936 | Fix read past the end of string. | |
1937 | * testsuite/util/testsuite_character.cc: Fix out-of-bounds write. | |
1938 | ||
0a024155 JW |
1939 | * testsuite/24_iterators/container_access.cc: Fix missing returns. |
1940 | * testsuite/24_iterators/range_access_cpp14.cc: Likewise. | |
1941 | ||
22620c14 JW |
1942 | * testsuite/18_support/new_delete_placement.cc: Don't allocate (and |
1943 | leak) memory for arguments to placement delete. | |
1944 | * testsuite/20_util/addressof/1.cc: Don't leak memory. | |
1945 | * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise. | |
1946 | * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc: | |
1947 | Likewise. | |
1948 | ||
18407bfb JW |
1949 | 2016-07-20 Jonathan Wakely <jwakely@redhat.com> |
1950 | ||
09a855ae JW |
1951 | * doc/xml/manual/intro.xml: Document DR 2684 status. |
1952 | * doc/html/*: Regenerate. | |
1953 | ||
e87b7d52 JW |
1954 | * include/std/atomic (atomic_int8_t, atomic_uint8_t, atomic_int16_t) |
1955 | (atomic_uint16_t, atomic_int32_t, atomic_uint32_t, atomic_int64_t) | |
1956 | (atomic_uint64_t): Define (LWG 2441). | |
1957 | * testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Remove empty | |
1958 | lines. | |
1959 | * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Test for | |
1960 | the new types. | |
1961 | * doc/xml/manual/intro.xml: Document DR 2441 status. | |
1962 | ||
07c772ed JW |
1963 | * include/std/istream (operator>>(basic_istream&&, _Tp&)): Adjust |
1964 | to use perfect forwarding (LWG 2328). | |
1965 | * testsuite/27_io/rvalue_streams.cc: Test perfect forwarding. | |
1966 | * doc/xml/manual/intro.xml: Document DR 2328 status. | |
1967 | ||
18407bfb JW |
1968 | * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Use |
1969 | static objects for catching nullptr as pointer to member types. | |
1970 | ||
40f3e913 VV |
1971 | 2016-07-18 Ville Voutilainen <ville.voutilainen@gmail.com> |
1972 | ||
1973 | Clean up optional's comments. | |
1974 | * include/std/optional: Remove incorrect section headers | |
1975 | from comments when redundant, replace bare section | |
1976 | headers with more descriptive comments. | |
1977 | ||
479d0ed5 JW |
1978 | 2016-07-15 Jonathan Wakely <jwakely@redhat.com> |
1979 | ||
4f5f9962 JW |
1980 | * include/bits/algorithmfwd.h: Change C++0x to C++11 in comments. |
1981 | * include/bits/move.h: Likewise. | |
1982 | * include/bits/postypes.h: Likewise. | |
1983 | * include/debug/bitset: Likewise. | |
1984 | * include/ext/pb_ds/detail/type_utils.hpp: Likewise. | |
1985 | * include/ext/string_conversions.h: Change C++0x to __cxx11 in | |
1986 | comment. | |
1987 | * testsuite/27_io/fpos/14320-1.cc: Change C++0x to C++11 in comment. | |
1988 | * testsuite/util/thread/all.h: Likewise. | |
1989 | ||
d1129d45 JW |
1990 | * include/bits/stl_algo.h (for_each): Remove redundant _GLIBCXX_MOVE |
1991 | and adjust comment. | |
1992 | ||
479d0ed5 JW |
1993 | PR c++/58796 |
1994 | * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Make | |
1995 | nullptr match handlers of pointer type. | |
1996 | ||
4db1cb44 ESR |
1997 | 2016-07-15 Edward Smith-Rowland <3dw4rd@verizon.net> |
1998 | ||
1999 | Implement C++17 P0025 clamp. | |
2000 | * include/bits/algorithmfwd.h: Declare clamp overloads. | |
2001 | * include/bits/stl_algo.h: Implement clamp. Feature __cpp_lib_clamp. | |
2002 | * testsuite/25_algorithms/clamp/1.cc: New test. | |
2003 | * testsuite/25_algorithms/clamp/2.cc: New test. | |
2004 | * testsuite/25_algorithms/clamp/constexpr.cc: New test. | |
2005 | * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/ | |
2006 | 1.cc: New test. | |
2007 | * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/ | |
2008 | pod.cc: New test. | |
2009 | ||
1ec0f763 VV |
2010 | 2016-07-14 Ville Voutilainen <ville.voutilainen@gmail.com> |
2011 | ||
2012 | Fix the constraints for any's assignment operator template to properly | |
2013 | reject assignment from a non-copyable lvalue. | |
2014 | * include/std/any (operator=(_ValueType&&)): Constrain the decayed | |
2015 | type for is_copy_constructible, | |
2016 | * testsuite/20_util/any/requirements.cc: Add a test for | |
2017 | non-copyable lvalues. | |
2018 | ||
0a2bf188 JW |
2019 | 2016-07-14 Jonathan Wakely <jwakely@redhat.com> |
2020 | ||
ea5ec6b7 JW |
2021 | * include/experimental/functional: Include <parallel/algorithm> in |
2022 | Parallel Mode. | |
2023 | ||
47d5cb3c JW |
2024 | * testsuite/experimental/functional/searchers.cc: Include <algorithm> |
2025 | for std::search. | |
2026 | ||
0a2bf188 JW |
2027 | PR libstdc++/70716 |
2028 | * include/bits/forward_list.h (forward_list): Update doxygen comments | |
2029 | to reflect allocator propagation semantics. Remove ambiguous | |
2030 | statements about data being lost. | |
2031 | * include/bits/stl_deque.h (deque): Likewise. | |
2032 | * include/bits/stl_list.h (list): Likewise. | |
2033 | * include/bits/stl_map.h (map): Likewise. | |
2034 | * include/bits/stl_multimap.h (multimap): Likewise. | |
2035 | * include/bits/stl_multiset.h (multiset): Likewise. | |
2036 | * include/bits/stl_set.h (set): Likewise. | |
2037 | * include/bits/stl_vector.h (vector): Likewise. | |
2038 | * include/bits/unordered_map.h (unordered_map, unordered_multimap): | |
2039 | Likewise. | |
2040 | * include/bits/unordered_set.h (unordered_set, unordered_multiset): | |
2041 | Likewise. | |
2042 | ||
25a69162 VV |
2043 | 2016-07-14 Ville Voutilainen <ville.voutilainen@gmail.com> |
2044 | ||
2045 | Implement P0032R3, Homogeneous interface for variant, any and optional, | |
2046 | for the parts concerning any and optional. | |
2047 | * include/std/any (_Storage()): Make constexpr and have it | |
2048 | initialize _M_ptr. | |
2049 | (any()): Make constexpr. | |
2050 | (any(const any&)): Adjust. | |
2051 | (any(any&&)): Likewise. | |
2052 | (__any_constructible_t): New. | |
2053 | (any(_ValueType&&)): Constrain. | |
2054 | (any(in_place_type_t<_Tp>, _Args&&...)): New. | |
2055 | (any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)): | |
2056 | Likewise. | |
2057 | (~any()): Adjust. | |
2058 | (operator=(const any&)): Likewise. | |
2059 | (operator=(any&&)): Likewise. | |
2060 | (operator=(_ValueType&&)): Constrain. | |
2061 | (emplace(_Args&&...)): New. | |
2062 | (emplace(initializer_list<_Up>, _Args&&...)): Likewise. | |
2063 | (clear()): Remove. | |
2064 | (reset()): New. | |
2065 | (swap(any&)): Adjust. | |
2066 | (empty()): Remove. | |
2067 | (has_value()): New. | |
2068 | (type()): Adjust. | |
2069 | (_Manager_internal::_S_create(_Storage&, _Args&&...)): New. | |
2070 | (_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise. | |
2071 | (make_any(_Args&&...)): Likewise. | |
2072 | (make_any(initializer_list<_Up>, _Args&&...)): Likewise. | |
2073 | * include/std/optional (in_place_t, in_place): Remove. | |
2074 | (bad_optional_access): Add a comment referring to LEWG 72. | |
2075 | (emplace(_Args&&...)): Constrain. | |
2076 | (has_value()): New. | |
2077 | (reset()): Likewise. | |
2078 | (make_optional(_Args&&...)): Likewise. | |
2079 | (make_optional(initializer_list<_Up>, _Args&&...)): Likewise. | |
2080 | * include/std/utility (in_place_tag): New. | |
2081 | (__in_place, __in_place_type, __in_place_index): Likewise. | |
2082 | (in_place_t, in_place_type_t, in_place_index_t): Likewise. | |
2083 | (in_place(__in_place*)): Likewise. | |
2084 | (in_place(__in_place_type<_Tp>*)): Likewise. | |
2085 | (in_place(__in_place_index<_Idx>*)): Likewise. | |
2086 | * testsuite/20_util/any/assign/1.cc: Adjust. | |
2087 | * testsuite/20_util/any/assign/emplace.cc: New. | |
2088 | * testsuite/20_util/any/assign/self.cc: Adjust. | |
2089 | * testsuite/20_util/any/cons/1.cc: Likewise. | |
2090 | * testsuite/20_util/any/cons/in_place.cc: New. | |
2091 | * testsuite/20_util/any/make_any.cc: Likewise. | |
2092 | * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust. | |
2093 | * testsuite/20_util/any/misc/swap.cc: Likewise. | |
2094 | * testsuite/20_util/any/modifiers/1.cc: Likewise. | |
2095 | * testsuite/20_util/any/requirements.cc: New. | |
2096 | * testsuite/20_util/in_place/requirements.cc: Likewise. | |
2097 | * testsuite/20_util/optional/constexpr/in_place.cc: Adjust. | |
2098 | * testsuite/20_util/optional/in_place.cc: Likewise. | |
2099 | * testsuite/20_util/optional/make_optional.cc: Add tests for | |
2100 | the new overloads of make_optional. | |
2101 | ||
c0d31471 VV |
2102 | 2016-07-13 Ville Voutilainen <ville.voutilainen@gmail.com> |
2103 | ||
2104 | Implement P0307R2, Making Optional Greater Equal Again. | |
2105 | * include/experimental/optional (_Has_addressof): Fix the comment. | |
2106 | * include/std/optional (_Has_addressof): Likewise. | |
2107 | (operator=(_Up&&)): Constrain. | |
2108 | (operator=(const optional<_Up>&)): Likewise. | |
2109 | (operator=(optional<_Up>&&)): Likewise. | |
2110 | (__optional_relop_t): New. | |
2111 | (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain. | |
2112 | (operator!=(const optional<_Tp>&, const optional<_Tp>&)): | |
2113 | Constrain and make transparent. | |
2114 | (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain. | |
2115 | (operator>(const optional<_Tp>&, const optional<_Tp>&)): | |
2116 | Constrain and make transparent. | |
2117 | (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise. | |
2118 | (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise. | |
2119 | (operator==(const optional<_Tp>&, const _Tp&): Constrain. | |
2120 | (operator==(const _Tp&, const optional<_Tp>&)): Likewise. | |
2121 | (operator!=(const optional<_Tp>&, _Tp const&)): | |
2122 | Constrain and make transparent. | |
2123 | (operator!=(const _Tp&, const optional<_Tp>&)): Likewise. | |
2124 | (operator<(const optional<_Tp>&, const _Tp&)): Constrain. | |
2125 | (operator<(const _Tp&, const optional<_Tp>&)): Likewise. | |
2126 | (operator>(const optional<_Tp>&, const _Tp&)): | |
2127 | Constrain and make transparent. | |
2128 | (operator>(const _Tp&, const optional<_Tp>&)): Likewise. | |
2129 | (operator<=(const optional<_Tp>&, const _Tp&)): Likewise. | |
2130 | (operator<=(const _Tp&, const optional<_Tp>&)): Likewise. | |
2131 | (operator>=(const optional<_Tp>&, const _Tp&)): Likewise. | |
2132 | (operator>=(const _Tp&, const optional<_Tp>&)): Likewise. | |
2133 | * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust. | |
2134 | * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise. | |
2135 | * testsuite/20_util/optional/relops/1.cc: Likewise. | |
2136 | * testsuite/20_util/optional/relops/2.cc: Likewise. | |
2137 | * testsuite/20_util/optional/relops/3.cc: Likewise. | |
2138 | * testsuite/20_util/optional/relops/4.cc: Likewise. | |
2139 | * testsuite/20_util/optional/requirements.cc: Add tests to verify | |
2140 | that optional's relops are transparent and don't synthesize | |
2141 | operators. Also test that assignment sfinaes. | |
2142 | ||
260d92cd JW |
2143 | 2016-07-13 Jonathan Wakely <jwakely@redhat.com> |
2144 | ||
e383deac JW |
2145 | PR libstdc++/71856 |
2146 | * include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty. | |
2147 | * include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS): | |
2148 | Rename to _GLIBCXX_PARALLEL_ASSERTIONS and make default value depend | |
2149 | on _GLIBCXX_ASSERTIONS. | |
2150 | * include/parallel/balanced_quicksort.h: Rename _GLIBCXX_ASSERTIONS. | |
2151 | Include <unistd.h> for sleep. | |
2152 | * include/parallel/losertree.h: Rename _GLIBCXX_ASSERTIONS. | |
2153 | * include/parallel/merge.h: Likewise. | |
2154 | * include/parallel/multiway_merge.h: Likewise. | |
2155 | * include/parallel/partition.h: Likewise. | |
2156 | * include/parallel/queue.h: Likewise. | |
2157 | * include/parallel/sort.h: Likewise. | |
2158 | * testsuite/25_algorithms/headers/algorithm/ | |
2159 | parallel_algorithm_assert.cc: New. | |
2160 | ||
17f8dc93 JW |
2161 | * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] |
2162 | (replace(__const_iterator, __const_iterator, initializer_list<C>)): | |
2163 | Forward to different overload. | |
2164 | ||
260d92cd JW |
2165 | * include/bits/allocated_ptr.h (__allocated_ptr::_S_raw_ptr): Make |
2166 | static. | |
2167 | ||
2d60da10 JW |
2168 | 2016-07-13 Jonathan Wakely <jwakely@redhat.com> |
2169 | ||
2170 | Revert "Add non-const overload of std::string::data()". | |
2171 | ||
05505e9d VV |
2172 | 2016-07-13 Ville Voutilainen <ville.voutilainen@gmail.com> |
2173 | ||
86c0ec1d VV |
2174 | Implement P0307R2, Making Optional Greater Equal Again. |
2175 | * include/experimental/optional (_Has_addressof): Fix the comment. | |
2176 | * include/std/optional (_Has_addressof): Likewise. | |
2177 | (operator=(_Up&&)): Constrain. | |
2178 | (operator=(const optional<_Up>&)): Likewise. | |
2179 | (operator=(optional<_Up>&&)): Likewise. | |
2180 | (__optional_relop_t): New. | |
2181 | (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain. | |
2182 | (operator!=(const optional<_Tp>&, const optional<_Tp>&)): | |
2183 | Constrain and make transparent. | |
2184 | (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain. | |
2185 | (operator>(const optional<_Tp>&, const optional<_Tp>&)): | |
2186 | Constrain and make transparent. | |
2187 | (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise. | |
2188 | (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise. | |
2189 | (operator==(const optional<_Tp>&, const _Tp&): Constrain. | |
2190 | (operator==(const _Tp&, const optional<_Tp>&)): Likewise. | |
2191 | (operator!=(const optional<_Tp>&, _Tp const&)): | |
2192 | Constrain and make transparent. | |
2193 | (operator!=(const _Tp&, const optional<_Tp>&)): Likewise. | |
2194 | (operator<(const optional<_Tp>&, const _Tp&)): Constrain. | |
2195 | (operator<(const _Tp&, const optional<_Tp>&)): Likewise. | |
2196 | (operator>(const optional<_Tp>&, const _Tp&)): | |
2197 | Constrain and make transparent. | |
2198 | (operator>(const _Tp&, const optional<_Tp>&)): Likewise. | |
2199 | (operator<=(const optional<_Tp>&, const _Tp&)): Likewise. | |
2200 | (operator<=(const _Tp&, const optional<_Tp>&)): Likewise. | |
2201 | (operator>=(const optional<_Tp>&, const _Tp&)): Likewise. | |
2202 | (operator>=(const _Tp&, const optional<_Tp>&)): Likewise. | |
2203 | * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust. | |
2204 | * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise. | |
2205 | * testsuite/20_util/optional/relops/1.cc: Likewise. | |
2206 | * testsuite/20_util/optional/relops/2.cc: Likewise. | |
2207 | * testsuite/20_util/optional/relops/3.cc: Likewise. | |
2208 | * testsuite/20_util/optional/relops/4.cc: Likewise. | |
2209 | * testsuite/20_util/optional/requirements.cc: Add tests to verify | |
2210 | that optional's relops are transparent and don't synthesize | |
2211 | operators. Also test that assignment sfinaes. | |
2212 | ||
ceea48fc JW |
2213 | 2016-07-13 Jonathan Wakely <jwakely@redhat.com> |
2214 | ||
2215 | * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (_M_c_str): | |
2216 | New function. | |
2217 | (_M_disjunct, basic_string(const basic_string&, size_t)): Use data() | |
2218 | instead of _M_data(). | |
2219 | (basic_string(const basic_string&, size_t, size_t, const _Alloc&)): | |
2220 | Likewise. | |
2221 | (append(const basic_string&)): Likewise. | |
2222 | (append(const basic_string&, size_type, size_type)): Likewise. | |
2223 | (assign(const basic_string&, size_type, size_type)): Likewise. | |
2224 | (insert(size_type, const basic_string&)): Likewise. | |
2225 | (insert(size_type, const basic_string&, size_type, size_type)): | |
2226 | Likewise. | |
2227 | (replace(size_type, size_type, const basic_string&, size_type, | |
2228 | size_type)): Likewise. | |
2229 | (replace(__const_iterator, __const_iterator, const basic_string&)): | |
2230 | Likewise. | |
2231 | (c_str(), data()): Use c_str() instead of _M_data(). | |
2232 | (data()): Add non-const overload as per LWG 2391 and P0272R1. | |
2233 | (compare(const basic_string&)): Use data() instead of _M_data(). | |
2234 | [!_GLIBCXX_USE_CXX11_ABI] (data()): Add non-const overload. | |
2235 | * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI] (_M_mutate): | |
2236 | Pass raw pointers to _S_copy. | |
2237 | (_M_erase, _M_replace_aux): Pass raw pointers to _S_move and | |
2238 | _S_assign. | |
2239 | (find(const _CharT*, size_type, size_type)): Use data instead of | |
2240 | _M_data(). | |
2241 | * testsuite/21_strings/basic_string/allocator/char/ext_ptr.cc: New. | |
2242 | * testsuite/21_strings/basic_string/operations/data/char/2.cc: New. | |
2243 | * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New. | |
2244 | ||
17b31c05 JW |
2245 | 2016-07-12 Jonathan Wakely <jwakely@redhat.com> |
2246 | ||
7cbadfdc JW |
2247 | * libsupc++/new: Remove nothrow sized deletes (LWG 2458). |
2248 | * doc/xml/manual/intro.xml: Document DR 2458 status. | |
2249 | * doc/html*: Regenerate. | |
2250 | ||
1b24fb4c JW |
2251 | * testsuite/20_util/pair/astuple/astuple.cc: Only include <utility>. |
2252 | * testsuite/23_containers/array/tuple_interface/tuple_element.cc: | |
2253 | Only include <array>. | |
2254 | * testsuite/23_containers/array/tuple_interface/tuple_size.cc: | |
2255 | Likewise. | |
1b1c16e0 | 2256 | * doc/xml/manual/intro.xml: Document LWG 2212 support. |
1b24fb4c JW |
2257 | * doc/html*: Regenerate. |
2258 | ||
17b31c05 JW |
2259 | * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc: |
2260 | Add testcase from LWG 2164. | |
2261 | ||
76225d2c FD |
2262 | 2016-07-11 François Dumont <fdumont@gcc.gnu.org> |
2263 | ||
2264 | * include/bits/stl_vector.h (push_back(const value_type&)): Forward | |
2265 | to _M_realloc_insert. | |
2266 | (insert(const_iterator, value_type&&)): Forward to _M_insert_rval. | |
2267 | (_M_realloc_insert): Declare new function. | |
2268 | (_M_emplace_back_aux): Remove definition. | |
2269 | * include/bits/vector.tcc (emplace_back(_Args...)): | |
2270 | Use _M_realloc_insert. | |
2271 | (insert(const_iterator, const value_type&)): Likewise. | |
2272 | (_M_insert_rval, _M_emplace_aux): Likewise. | |
2273 | (_M_emplace_back_aux): Remove declaration. | |
2274 | (_M_realloc_insert): Define. | |
2275 | * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: | |
2276 | Adjust expected results for emplacing an lvalue with reallocation. | |
2277 | ||
435e56fb VV |
2278 | 2016-07-10 Ville Voutilainen <ville.voutilainen@gmail.com> |
2279 | ||
2280 | Implement std::optional. | |
2281 | * include/Makefile.am: Add optional to exported headers. | |
2282 | * include/Makefile.in: Likewise. | |
2283 | * include/std/optional: New. | |
2284 | * testsuite/20_util/optional/typedefs.cc: Likewise. | |
2285 | * testsuite/20_util/optional/relops/2.cc: Likewise. | |
2286 | * testsuite/20_util/optional/relops/3.cc: Likewise. | |
2287 | * testsuite/20_util/optional/relops/4.cc: Likewise. | |
2288 | * testsuite/20_util/optional/relops/5.cc: Likewise. | |
2289 | * testsuite/20_util/optional/relops/1.cc: Likewise. | |
2290 | * testsuite/20_util/optional/relops/6.cc: Likewise. | |
2291 | * testsuite/20_util/optional/nullopt.cc: Likewise. | |
2292 | * testsuite/20_util/optional/in_place.cc: Likewise. | |
2293 | * testsuite/20_util/optional/make_optional.cc: Likewise. | |
2294 | * testsuite/20_util/optional/assignment/2.cc: Likewise. | |
2295 | * testsuite/20_util/optional/assignment/3.cc: Likewise. | |
2296 | * testsuite/20_util/optional/assignment/4.cc: Likewise. | |
2297 | * testsuite/20_util/optional/assignment/5.cc: Likewise. | |
2298 | * testsuite/20_util/optional/assignment/1.cc: Likewise. | |
2299 | * testsuite/20_util/optional/assignment/6.cc: Likewise. | |
2300 | * testsuite/20_util/optional/cons/value_neg.cc: Likewise. | |
2301 | * testsuite/20_util/optional/cons/default.cc: Likewise. | |
2302 | * testsuite/20_util/optional/cons/move.cc: Likewise. | |
2303 | * testsuite/20_util/optional/cons/value.cc: Likewise. | |
2304 | * testsuite/20_util/optional/cons/copy.cc: Likewise. | |
2305 | * testsuite/20_util/optional/requirements.cc: Likewise. | |
2306 | * testsuite/20_util/optional/observers/2.cc: Likewise. | |
2307 | * testsuite/20_util/optional/observers/3.cc: Likewise. | |
2308 | * testsuite/20_util/optional/observers/4.cc: Likewise. | |
2309 | * testsuite/20_util/optional/observers/5.cc: Likewise. | |
2310 | * testsuite/20_util/optional/observers/1.cc: Likewise. | |
2311 | * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise. | |
2312 | * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise. | |
2313 | * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise. | |
2314 | * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise. | |
2315 | * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise. | |
2316 | * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise. | |
2317 | * testsuite/20_util/optional/constexpr/nullopt.cc: Likewise. | |
2318 | * testsuite/20_util/optional/constexpr/in_place.cc: Likewise. | |
2319 | * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise. | |
2320 | * testsuite/20_util/optional/constexpr/cons/default.cc: Likewise. | |
2321 | * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise. | |
2322 | * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise. | |
2323 | * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise. | |
2324 | * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise. | |
2325 | * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise. | |
2326 | * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise. | |
2327 | * testsuite/20_util/optional/swap/1.cc: Likewise. | |
2328 | ||
d81102f4 JW |
2329 | 2016-07-08 Jonathan Wakely <jwakely@redhat.com> |
2330 | ||
2331 | * testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New. | |
2332 | ||
9fc0faf0 JW |
2333 | 2016-07-07 Jonathan Wakely <jwakely@redhat.com> |
2334 | ||
2335 | * doc/xml/manual/status_cxx2014.xml: Update LFTS status table. | |
2336 | * doc/html/*: Regenerate. | |
2337 | ||
52e86221 VV |
2338 | 2016-07-07 Ville Voutilainen <ville.voutilainen@gmail.com> |
2339 | ||
2340 | Implement std::any. | |
2341 | * include/Makefile.am: Add any and c++17_warning.h to exported headers. | |
2342 | * include/Makefile.in: Likewise. | |
2343 | * include/std/any: New. | |
2344 | * testsuite/20_util/any/assign/1.cc: Likewise. | |
2345 | * testsuite/20_util/any/assign/2.cc: Likewise. | |
2346 | * testsuite/20_util/any/assign/self.cc: Likewise. | |
2347 | * testsuite/20_util/any/cons/1.cc: Likewise. | |
2348 | * testsuite/20_util/any/cons/2.cc: Likewise. | |
2349 | * testsuite/20_util/any/cons/aligned.cc: Likewise. | |
2350 | * testsuite/20_util/any/cons/nontrivial.cc: Likewise. | |
2351 | * testsuite/20_util/any/misc/any_cast.cc: Likewise. | |
2352 | * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise. | |
2353 | * testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise. | |
2354 | * testsuite/20_util/any/misc/swap.cc: Likewise. | |
2355 | * testsuite/20_util/any/modifiers/1.cc: Likewise. | |
2356 | * testsuite/20_util/any/observers/type.cc: Likewise. | |
2357 | * testsuite/20_util/any/typedefs.cc: Likewise. | |
2358 | ||
3042e708 VV |
2359 | 2016-07-06 Ville Voutilainen <ville.voutilainen@gmail.com> |
2360 | ||
2361 | Add a new header for diagnosing the use of C++17 facilities | |
2362 | in pre-C++17 modes. | |
2363 | * include/bits/c++17_warning.h: New. | |
2364 | ||
6ffe8548 VV |
2365 | 2016-07-06 Ville Voutilainen <ville.voutilainen@gmail.com> |
2366 | ||
2367 | Implement LWG 2451, optional<T> should 'forward' T's | |
2368 | implicit conversions. | |
2369 | * include/experimental/optional (__is_optional_impl, __is_optional): | |
2370 | New. | |
2371 | (optional()): Make constexpr and default. | |
2372 | (optional(_Up&&), optional(const optional<_Up>&), | |
2373 | optional(optional<_Up>&& __t): New. | |
2374 | (operator=(_Up&&)): Constrain. | |
2375 | (operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New. | |
2376 | * testsuite/experimental/optional/cons/value.cc: | |
2377 | Add tests for the functionality added by LWG 2451. | |
2378 | * testsuite/experimental/optional/cons/value_neg.cc: New. | |
2379 | ||
7d4f48b5 VV |
2380 | 2016-07-05 Ville Voutilainen <ville.voutilainen@gmail.com> |
2381 | ||
2382 | Implement LWG 2509, | |
2383 | any_cast doesn't work with rvalue reference targets and cannot | |
2384 | move with a value target. | |
2385 | * include/experimental/any (any(_ValueType&&)): Constrain and | |
2386 | add an overload that doesn't forward. | |
2387 | (any_cast(any&&)): Constrain and add an overload that moves. | |
2388 | * testsuite/experimental/any/misc/any_cast.cc: Add tests for | |
2389 | the functionality added by LWG 2509. | |
2390 | ||
097e8994 FD |
2391 | 2016-07-04 François Dumont <fdumont@gcc.gnu.org> |
2392 | ||
2393 | * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc: | |
2394 | New test. | |
2395 | * testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New | |
2396 | test. | |
2397 | ||
9958c7eb JW |
2398 | 2016-07-04 Jonathan Wakely <jwakely@redhat.com> |
2399 | ||
2400 | * include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)): | |
2401 | Define inline. Forward to _M_emplace_aux. | |
2402 | (insert(const_iterator, value_type&&)): Forward to _M_insert_rval. | |
2403 | (_M_insert_rval, _M_emplace_aux): Declare new functions. | |
2404 | (_Temporary_value): New RAII type using allocator to construct/destroy. | |
2405 | (_S_insert_aux_assign): Remove. | |
2406 | (_M_insert_aux): Make non-variadic. | |
2407 | * include/bits/vector.tcc (insert(const_iterator, const value_type&)): | |
2408 | Use _Temporary_value. | |
2409 | (emplace(const_iterator, _Args&&...)): Remove definition. | |
2410 | (_M_insert_rval, _M_emplace_aux): Define. | |
2411 | (_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign. | |
2412 | (_M_fill_insert): Use _Temporary_value. | |
2413 | * testsuite/23_containers/vector/allocator/construction.cc: New test. | |
2414 | * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: | |
2415 | Adjust expected results for emplacing an lvalue with reallocation. | |
2416 | * testsuite/23_containers/vector/check_construct_destroy.cc: Adjust | |
2417 | expected results to account for construction/destruction of temporary | |
2418 | using allocator. | |
2419 | * testsuite/backward/hash_set/check_construct_destroy.cc: Likewise. | |
2420 | ||
e12880f9 VV |
2421 | 2016-07-04 Ville Voutilainen <ville.voutilainen@gmail.com> |
2422 | ||
2423 | PR libstdc++/71313 | |
2424 | * src/filesystem/ops.cc (remove_all(const path&, error_code&)): | |
2425 | Call remove_all for children of a directory. | |
2426 | * testsuite/experimental/filesystem/operations/create_directories.cc: | |
2427 | Adjust. | |
2428 | ||
6c539f2e FD |
2429 | 2016-07-02 François Dumont <fdumont@gcc.gnu.org> |
2430 | ||
2431 | * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust | |
2432 | dg-error line numbers. | |
2433 | * testsuite/23_containers/array/tuple_interface/ | |
2434 | tuple_element_debug_neg.cc: Likewise. | |
2435 | * testsuite/25_algorithms/lexicographical_compare/debug/ | |
2436 | irreflexive_neg.cc: Remove. | |
2437 | ||
72fb6bae TP |
2438 | 2016-06-30 Thomas Preud'homme <thomas.preudhomme@arm.com> |
2439 | ||
2440 | * testsuite/29_atomics/atomic/65913.cc: Require atomic-builtins rather | |
2441 | than specific target. | |
2442 | ||
dc448fa0 FD |
2443 | 2016-06-27 François Dumont <fdumont@gcc.gnu.org> |
2444 | ||
2445 | PR libstdc++/71640 | |
2446 | * include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert | |
2447 | friend declaration. | |
2448 | ||
e615c24c FD |
2449 | 2016-06-23 François Dumont <fdumont@gcc.gnu.org> |
2450 | ||
2451 | * include/debug/array (array<>::swap): Fix noexcept qualificaton for | |
2452 | zero-size array. | |
2453 | ||
0609abda TS |
2454 | 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
2455 | ||
2456 | * configure.host: Remove mep-* support. | |
2457 | ||
8466af06 TS |
2458 | 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
2459 | ||
2460 | * configure: Regenerate. | |
2461 | * configure.host: Remove support for knetbsd. | |
2462 | * crossconfig.m4: Likewise. | |
2463 | ||
29dbb034 FD |
2464 | 2016-06-20 François Dumont <fdumont@gcc.gnu.org> |
2465 | ||
2466 | PR libstdc++/71181 | |
2467 | * include/tr1/hashtable_policy.h | |
2468 | (_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator | |
2469 | dereferenceable to avoid check on lower_bound result. | |
2470 | (_Prime_rehash_policy::_M_bkt_for_elements): Call latter. | |
2471 | (_Prime_rehash_policy::_M_need_rehash): Likewise. | |
2472 | * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt): | |
2473 | Always return a value greater than input value. Set _M_next_resize to | |
2474 | max value when reaching highest prime number. | |
2475 | * src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel | |
2476 | being now useless. | |
2477 | * testsuite/23_containers/unordered_set/hash_policy/71181.cc: New. | |
2478 | * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc | |
2479 | (test02): New. | |
2480 | * testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New. | |
2481 | * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: | |
2482 | Fix indentation. | |
2483 | ||
3ebacabd JW |
2484 | 2016-06-17 Jonathan Wakely <jwakely@redhat.com> |
2485 | ||
2486 | PR libstdc++/71545 | |
2487 | * include/bits/stl_algobase.h (lower_bound, lexicographical_compare): | |
2488 | Remove irreflexive checks. | |
2489 | * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range, | |
2490 | binary_search): Likewise. | |
2491 | * testsuite/25_algorithms/equal_range/partitioned.cc: New test. | |
2492 | * testsuite/25_algorithms/lexicographical_compare/71545.cc: New test. | |
2493 | * testsuite/25_algorithms/lower_bound/partitioned.cc: New test. | |
2494 | * testsuite/25_algorithms/upper_bound/partitioned.cc: New test. | |
2495 | * testsuite/util/testsuite_iterators.h (__gnu_test::test_container): | |
2496 | Add constructor from array. | |
2497 | ||
bd2ee798 FD |
2498 | 2016-06-16 François Dumont <fdumont@gcc.gnu.org> |
2499 | ||
2500 | * include/debug/debug.h | |
2501 | (__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty) | |
2502 | (__glibcxx_requires_subscript): Move... | |
2503 | * include/debug/assertions.h: ...here and add __builtin_expect. | |
2504 | (_GLIBCXX_DEBUG_ONLY): Remove ; value. | |
2505 | * include/bits/stl_deque.h | |
2506 | (std::deque<>::operator[]): Add __glibcxx_requires_subscript check. | |
2507 | (std::deque<>::front()): Add __glibcxx_requires_nonempty check. | |
2508 | (std::deque<>::back()): Likewise. | |
2509 | (std::deque<>::pop_front()): Likewise. | |
2510 | (std::deque<>::pop_back()): Likewise. | |
2511 | (std::deque<>::swap(deque&)): Add allocator check. | |
2512 | * include/bits/stl_vector.h | |
2513 | (std::vector<>::operator[]): Add __glibcxx_requires_subscript check. | |
2514 | (std::vector<>::front()): Add __glibcxx_requires_nonempty check. | |
2515 | (std::vector<>::back()): Likewise. | |
2516 | (std::vector<>::pop_back()): Likewise. | |
2517 | (std::vector<>::swap(vector&)): Add allocator check. | |
2518 | ||
6b9539e2 DK |
2519 | 2016-06-16 Daniel Kruegler <daniel.kruegler@gmail.com> |
2520 | ||
2521 | Provide swappable traits (p0185r1) | |
2522 | * include/std/type_traits (is_swappable, is_nothrow_swappable, | |
2523 | is_swappable_with, is_nothrow_swappable_with, is_swappable_v, | |
2524 | is_nothrow_swappable_v, is_swappable_with_v, | |
2525 | is_nothrow_swappable_with_v): New. | |
2526 | * include/bits/stl_pair.h: Use it as per p0185r1. | |
2527 | * include/bits/stl_queue.h: Likewise. | |
2528 | * include/bits/stl_stack.h: Likewise. | |
2529 | * include/bits/unique_ptr.h: Likewise. | |
2530 | * include/std/tuple: Likewise. | |
2531 | * include/std/array: Likewise. Fix zero-size member swap. | |
2532 | * include/bits/hashtable.h: Use __and_. | |
2533 | * testsuite/20_util/is_nothrow_swappable/requirements/ | |
2534 | explicit_instantiation.cc: Change test options to std=gnu++17. | |
2535 | * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc: | |
2536 | Likewise. | |
2537 | * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise. | |
2538 | * testsuite/20_util/is_swappable/requirements/ | |
2539 | explicit_instantiation.cc: Likewise. | |
2540 | * testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise. | |
2541 | * testsuite/20_util/is_swappable/value.cc: Likewise. | |
2542 | * testsuite/20_util/is_nothrow_swappable/requirements/ | |
2543 | explicit_instantiation_ext.cc: New. | |
2544 | * testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc: | |
2545 | New. | |
2546 | * testsuite/20_util/is_nothrow_swappable/value.h: New. | |
2547 | * testsuite/20_util/is_nothrow_swappable/value_ext.cc: New. | |
2548 | * testsuite/20_util/is_nothrow_swappable_with/requirements/ | |
2549 | explicit_instantiation.cc: New. | |
2550 | * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc: | |
2551 | New. | |
2552 | * testsuite/20_util/is_nothrow_swappable_with/value.cc: New. | |
2553 | * testsuite/20_util/is_swappable/requirements/ | |
2554 | explicit_instantiation_ext.cc: New. | |
2555 | * testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New. | |
2556 | * testsuite/20_util/is_swappable/value.h: New. | |
2557 | * testsuite/20_util/is_swappable/value_ext.cc: New. | |
2558 | * testsuite/20_util/is_swappable_with/requirements/ | |
2559 | explicit_instantiation.cc: New. | |
2560 | * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New. | |
2561 | * testsuite/20_util/is_swappable_with/value.cc: New. | |
2562 | * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust | |
2563 | dg-error line numbers. | |
2564 | * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: | |
2565 | Likewise. | |
2566 | ||
0ae207e9 JW |
2567 | 2016-06-16 Jonathan Wakely <jwakely@redhat.com> |
2568 | ||
33ac58d5 JW |
2569 | * include/std/array: Remove trailing whitespace. |
2570 | * include/std/atomic: Likewise. | |
2571 | * include/std/bitset: Likewise. | |
2572 | * include/std/chrono: Likewise. | |
2573 | * include/std/complex: Likewise. | |
2574 | * include/std/condition_variable: Likewise. | |
2575 | * include/std/fstream: Likewise. | |
2576 | * include/std/functional: Likewise. | |
2577 | * include/std/future: Likewise. | |
2578 | * include/std/iomanip: Likewise. | |
2579 | * include/std/iosfwd: Likewise. | |
2580 | * include/std/istream: Likewise. | |
2581 | * include/std/limits: Likewise. | |
2582 | * include/std/ratio: Likewise. | |
2583 | * include/std/scoped_allocator: Likewise. | |
2584 | * include/std/sstream: Likewise. | |
2585 | * include/std/stdexcept: Likewise. | |
2586 | * include/std/string: Likewise. | |
2587 | * include/std/system_error: Likewise. | |
2588 | * include/std/thread: Likewise. | |
2589 | * include/std/tuple: Likewise. | |
2590 | * include/std/type_traits: Likewise. | |
2591 | * include/std/utility: Likewise. | |
2592 | * include/std/valarray: Likewise. | |
2593 | * include/std/vector: Likewise. | |
2594 | ||
0ae207e9 JW |
2595 | * include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define |
2596 | new overloaded functions. | |
2597 | * include/bits/vector.tcc (vector::_M_insert_aux): Use new functions | |
2598 | to avoid creating a redundant temporary. | |
2599 | * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New | |
2600 | test. | |
2601 | ||
d7e16fc5 FD |
2602 | 2016-06-15 François Dumont <fdumont@gcc.gnu.org> |
2603 | ||
2604 | * include/bits/stl_deque.h | |
2605 | (std::deque<>::operator=): Call _M_assign_aux. | |
2606 | (std::deque<>::assign(initializer_list<>)): Likewise. | |
2607 | (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert. | |
2608 | (std::deque<>::insert(const_iterator, initializer_list<>)): | |
2609 | Call _M_range_insert_aux. | |
2610 | (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag): | |
2611 | Likewise. | |
2612 | (std::deque<>::_M_fill_assign): Call _M_fill_insert. | |
2613 | (std::deque<>::_M_move_assign2): Call _M_assign_aux. | |
2614 | * include/bits/deque.tcc | |
2615 | (std::deque<>::operator=): Call _M_range_insert_aux. | |
2616 | (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)): | |
2617 | Likewise. | |
2618 | * include/bits/stl_vector.h | |
2619 | (std::vector<>::operator=): Call _M_assign_aux. | |
2620 | (std::vector<>::assign(initializer_list<>)): Likewise. | |
2621 | (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert. | |
2622 | (std::vector<>::insert(const_iterator, initializer_list<>)): | |
2623 | Call _M_range_insert. | |
2624 | * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise. | |
2625 | ||
373c0095 FD |
2626 | 2016-06-07 François Dumont <fdumont@gcc.gnu.org> |
2627 | ||
2628 | * include/std/tuple (_Head_base<>): Default specialization condition at | |
2629 | type declaration. | |
2630 | ||
dbc6221f VV |
2631 | 2016-06-06 Ville Voutilainen <ville.voutilainen@gmail.com> |
2632 | ||
2633 | Support allocators in tuples of zero size. | |
2634 | * include/std/tuple (tuple<>::tuple(), | |
2635 | tuple<>::tuple(allocator_arg_t, const _Alloc&), | |
2636 | tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New. | |
2637 | * testsuite/20_util/tuple/cons/allocators.cc: Adjust. | |
2638 | ||
94229fb6 JW |
2639 | 2016-06-06 Jonathan Wakely <jwakely@redhat.com> |
2640 | ||
2641 | PR libstdc++/71320 | |
2642 | * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)): | |
2643 | Add or remove permissions according to perms argument. | |
2644 | * testsuite/experimental/filesystem/operations/permissions.cc: New | |
2645 | test. | |
2646 | ||
7a667453 VV |
2647 | 2016-06-05 Ville Voutilainen <ville.voutilainen@gmail.com> |
2648 | ||
2649 | Protect allocator-overloads of tuple-from-tuple constructors | |
2650 | from cases that would create dangling references. | |
2651 | * include/std/tuple (tuple(allocator_arg_t, const _Alloc&, | |
2652 | const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&, | |
2653 | tuple<_UElements...>&&)): Add a check for _NonNestedTuple. | |
2654 | * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust. | |
2655 | ||
4acc3634 GP |
2656 | 2016-05-29 Gerald Pfeifer <gerald@pfeifer.com> |
2657 | ||
2658 | * doc/xml/manual/backwards_compatibility.xml: Adjust | |
2659 | lists.debian.org link to https. | |
2660 | * doc/html/manual/backwards.html: Regenerate. | |
2661 | ||
9020909e JW |
2662 | 2016-05-27 Jonathan Wakely <jwakely@redhat.com> |
2663 | ||
2664 | * doc/xml/manual/abi.xml: Adjust URL to use https. | |
2665 | * doc/html/manual/*: Regenerate. | |
2666 | ||
b7021006 VV |
2667 | 2016-05-27 Ville Voutilainen <ville.voutilainen@gmail.com> |
2668 | ||
2669 | PR libstdc++/66338 | |
2670 | * include/std/tuple (_TMC): Add a check for _NotSameTuple. | |
2671 | * include/std/tuple (tuple(_UElements&&...)): Remove the separate | |
2672 | check for _NotSameTuple. | |
2673 | * include/std/tuple (_TMCT): New. | |
2674 | * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it. | |
2675 | * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise. | |
2676 | * include/std/tuple (tuple(allocator_arg_t, const _Alloc&, | |
2677 | const tuple<_UElements...>&)): Likewise. | |
2678 | * include/std/tuple (tuple(allocator_arg_t, const _Alloc&, | |
2679 | tuple<_UElements...>&&)): Likewise. | |
2680 | * testsuite/20_util/tuple/cons/66338.cc: New. | |
2681 | ||
834f4c43 JW |
2682 | 2016-05-25 Jonathan Wakely <jwakely@redhat.com> |
2683 | ||
c42d2288 JW |
2684 | * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile. |
2685 | * configure: Regenerate. | |
2686 | * config.h.in: Regenerate. | |
2687 | ||
834f4c43 JW |
2688 | * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it. |
2689 | * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt): | |
2690 | Remove const qualification on function. Replace | |
2691 | _GLIBCXX14_USE_CONSTEXPR on automatic variables with const. | |
2692 | (_Power2_rehash_policy::_M_need_rehash): Remove const qualification. | |
2693 | (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier. | |
2694 | ||
732eb076 FD |
2695 | 2016-05-24 François Dumont <fdumont@gcc.gnu.org> |
2696 | ||
2697 | * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New. | |
2698 | * include/bits/hashtable_policy.h | |
2699 | (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy | |
2700 | having load factor management. | |
2701 | (_Mask_range_hashing): New. | |
2702 | (__clp2): New. | |
2703 | (_Power2_rehash_policy): New. | |
2704 | (_Inserts<>): Remove last template parameter, _Unique_keys, so that | |
2705 | partial specializations only depend on whether iterators are constant | |
2706 | or not. | |
2707 | * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to | |
2708 | test new hash policy. | |
2709 | * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc: | |
2710 | Likewise. | |
2711 | * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: | |
2712 | Likewise. | |
2713 | * testsuite/23_containers/unordered_set/insert/hash_policy.cc: | |
2714 | Likewise. | |
2715 | * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc: | |
2716 | Likewise. | |
2717 | * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc: | |
2718 | New. | |
2719 | * testsuite/performance/23_containers/insert/54075.cc: Add benchmark | |
2720 | using the new hash policy. | |
2721 | * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise. | |
2722 | ||
8be062c6 JW |
2723 | 2016-05-24 Jonathan Wakely <jwakely@redhat.com> |
2724 | ||
2725 | * include/bits/stl_queue.h (priority_queue::value_compare): Define. | |
2726 | ||
447caf82 FD |
2727 | 2016-05-23 François Dumont <fdumont@gcc.gnu.org> |
2728 | ||
2729 | * include/debug/safe_iterator.h | |
2730 | (_Safe_iterator<>::operator->()): Implement using underlying iterator | |
2731 | operator ->. | |
2732 | * include/debug/safe_local_iterator.h | |
2733 | (_Safe_local_iterator<>::operator->()): Likewise. | |
2734 | ||
11f8114b TP |
2735 | 2016-05-20 Thomas Preud'homme <thomas.preudhomme@arm.com> |
2736 | ||
2737 | * testsuite/experimental/memory_resource/1.cc: Add required argument | |
2738 | to dg-require-atomic-builtins. | |
2739 | ||
541a9b10 JW |
2740 | 2016-05-13 Jonathan Wakely <jwakely@redhat.com> |
2741 | ||
2742 | PR libstdc++/71073 | |
2743 | * include/debug/bitset: Add #pragma GCC system_header. | |
2744 | * include/debug/deque: Likewise. | |
2745 | * include/debug/list: Likewise. | |
2746 | * include/debug/map: Likewise. | |
2747 | * include/debug/set: Likewise. | |
2748 | * include/debug/string: Likewise. | |
2749 | * include/debug/unordered_map: Likewise. | |
2750 | * include/debug/unordered_set: Likewise. | |
2751 | * include/debug/vector: Likewise. | |
2752 | * include/debug/functions.h: Adjust whitespace. | |
2753 | ||
068b220e JW |
2754 | 2016-05-12 Jonathan Wakely <jwakely@redhat.com> |
2755 | ||
2756 | PR libstdc++/71081 | |
2757 | * testsuite/experimental/memory_resource/1.cc: Require atomics. | |
2758 | ||
3d73ae6e JW |
2759 | 2016-05-11 Jonathan Wakely <jwakely@redhat.com> |
2760 | ||
2761 | PR libstdc++/71049 | |
2762 | * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define | |
2763 | exception constructors with __sso_string parameters. | |
2764 | ||
d7187f9e JW |
2765 | 2016-05-10 Jonathan Wakely <jwakely@redhat.com> |
2766 | ||
7f99d40a JW |
2767 | * include/experimental/bits/fs_dir.h (begin, end): Add noexcept. |
2768 | * testsuite/experimental/filesystem/iterators/directory_iterator.cc: | |
2769 | Test begin and end functions. | |
2770 | * testsuite/experimental/filesystem/iterators/ | |
2771 | recursive_directory_iterator.cc: Likewise. | |
2772 | ||
6fe673ad JW |
2773 | PR libstdc++/71038 |
2774 | * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions. | |
2775 | * testsuite/experimental/filesystem/operations/copy_file.cc: New test. | |
2776 | ||
77a87b2a JW |
2777 | * include/experimental/bits/fs_dir.h (__directory_iterator_proxy): |
2778 | Overload operator* to move from rvalues. | |
2779 | ||
f9a39467 JW |
2780 | PR libstdc++/71036 |
2781 | * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir. | |
2782 | * testsuite/experimental/filesystem/operations/create_directory.cc: | |
2783 | New test. | |
2784 | ||
6f0800d4 JW |
2785 | PR libstdc++/71037 |
2786 | * src/filesystem/ops.cc (canonical(const path&, const path&)): Add | |
2787 | base path to exception. | |
2788 | * testsuite/experimental/filesystem/operations/canonical.cc: Test | |
2789 | paths contained in exception. | |
2790 | ||
f10b2e1c JW |
2791 | * testsuite/experimental/type_erased_allocator/2.cc: Remove unused |
2792 | using declaration. | |
2793 | ||
d7187f9e JW |
2794 | PR libstdc++/71005 |
2795 | * include/experimental/bits/fs_dir.h (__directory_iterator_proxy): | |
2796 | New type. | |
2797 | (directory_iterator::operator++(int)): Return proxy. | |
2798 | (recursive_directory_iterator::operator++(int)): Likewise. | |
2799 | * testsuite/experimental/filesystem/iterators/directory_iterator.cc: | |
2800 | Test post-increment. | |
2801 | * testsuite/experimental/filesystem/iterators/ | |
2802 | recursive_directory_iterator.cc: Likewise. | |
2803 | ||
7972e246 JW |
2804 | 2016-05-09 Jonathan Wakely <jwakely@redhat.com> |
2805 | ||
2806 | PR libstdc++/71004 | |
2807 | * testsuite/experimental/filesystem/iterators/ | |
2808 | recursive_directory_iterator.cc: Fix test02 to not call member | |
2809 | functions on invalid iterator, and use VERIFY not assert. | |
2810 | ||
fb334765 VV |
2811 | 2016-05-09 Ville Voutilainen <ville.voutilainen@gmail.com> |
2812 | ||
2813 | Avoid endless run-time recursion for copying single-element | |
2814 | tuples where the element type is by-value constructible | |
2815 | from any type. | |
2816 | * include/std/tuple (_NotSameTuple): New. | |
2817 | * include/std/tuple (tuple(_UElements&&...): Use it. | |
2818 | * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New. | |
2819 | ||
e4cce0ce JW |
2820 | 2016-05-09 Jonathan Wakely <jwakely@redhat.com> |
2821 | ||
2822 | PR libstdc++/71004 | |
2823 | * include/experimental/bits/fs_dir.h (recursive_directory_iterator): | |
2824 | Initialize scalar member variables in default constructor. | |
2825 | * testsuite/experimental/filesystem/iterators/ | |
d7187f9e | 2826 | recursive_directory_iterator.cc: Test default construction. |
e4cce0ce | 2827 | |
40436d81 RO |
2828 | 2016-05-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
2829 | ||
2830 | * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*. | |
2831 | ||
f5c40ce2 JW |
2832 | 2016-05-05 Jonathan Wakely <jwakely@redhat.com> |
2833 | ||
2834 | * testsuite/experimental/filesystem/path/native/string.cc: Add | |
2835 | dg-require-filesystem-ts directive. | |
2836 | ||
d9cb3e75 JW |
2837 | 2016-05-04 Jonathan Wakely <jwakely@redhat.com> |
2838 | ||
2839 | PR libstdc++/70940 | |
2840 | * include/experimental/memory_resource | |
2841 | (__resource_adaptor_imp::do_allocate): Do not default-construct | |
2842 | rebound allocator. | |
2843 | (__resource_adaptor_imp::do_deallocate): Likewise. Use | |
2844 | allocator_traits to get pointer type. | |
2845 | (__null_memory_resource::do_allocate): Remove unused parameters. | |
2846 | (__null_memory_resource::do_deallocate): Likewise. | |
2847 | (__null_memory_resource::do_is_equal): Likewise. Add return statement. | |
2848 | * testsuite/experimental/type_erased_allocator/1.cc: Combine with ... | |
2849 | * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and | |
2850 | move to ... | |
2851 | * testsuite/experimental/memory_resource/1.cc: Here. | |
2852 | * testsuite/experimental/memory_resource/null_memory_resource.cc: New. | |
2853 | * testsuite/experimental/memory_resource/resource_adaptor.cc: New. | |
2854 | ||
f92ab29f CG |
2855 | 2016-04-29 Chris Gregory <czipperz@gmail.com> |
2856 | ||
2857 | * config/*: Remove trailing whitespace. | |
2858 | * src/*: Likewise. | |
2859 | * testsuite/tr1/*: Likewise. | |
2860 | * testsuite/util/*: Likewise. | |
2861 | ||
272b2ce4 JW |
2862 | 2016-04-28 Jonathan Wakely <jwakely@redhat.com> |
2863 | ||
9f9eb84e JW |
2864 | PR libstdc++/70766 |
2865 | * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use | |
2866 | __addressof. | |
2867 | * include/bits/stream_iterator.h (istream_iterator, ostream_iterator): | |
2868 | Likewise. | |
2869 | * include/std/atomic (atomic<_Tp>): Likewise. | |
2870 | * include/std/shared_mutex (shared_lock): Likewise. | |
2871 | * testsuite/24_iterators/istream_iterator/70766.cc: New test. | |
2872 | * testsuite/24_iterators/ostream_iterator/70766.cc : New test. | |
2873 | * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number. | |
2874 | * testsuite/29_atomics/atomic/70766.cc: New test. | |
2875 | * testsuite/30_threads/shared_lock/70766.cc: New test. | |
2876 | ||
272b2ce4 JW |
2877 | * include/bits/hashtable_policy.h (__detail::_Insert_base, |
2878 | __detail::_Insert): Improve comments. | |
2879 | ||
45e20696 JW |
2880 | 2016-04-27 Jonathan Wakely <jwakely@redhat.com> |
2881 | ||
2882 | PR libstdc++/70767 | |
2883 | * include/std/limits: Update comments about DRs. | |
2884 | (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>, | |
2885 | numeric_limits<const volatile _Tp>): Define unconditionally. | |
2886 | ||
a635cdb2 JW |
2887 | 2016-04-24 Jonathan Wakely <jwakely@redhat.com> |
2888 | ||
2889 | PR libstdc++/70762 | |
2890 | * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use | |
2891 | static counter to return a different path on every call. | |
2892 | ||
216f7526 TS |
2893 | 2016-04-22 Tim Shen <timshen@google.com> |
2894 | ||
2895 | PR libstdc++/70745 | |
2896 | * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary): | |
2897 | Fix the match_not_bow and match_not_eow behavior. | |
2898 | * testsuite/28_regex/regression.cc: Add testcase. | |
2899 | ||
a1e1ec76 JW |
2900 | 2016-04-20 Jonathan Wakely <jwakely@redhat.com> |
2901 | ||
2902 | PR libstdc++/69703 | |
2903 | * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in, | |
2904 | __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations. | |
2905 | ||
9c476ad4 JW |
2906 | 2016-04-19 Jonathan Wakely <jwakely@redhat.com> |
2907 | ||
29ca91f7 | 2908 | PR libstdc++/69703 |
a1e1ec76 | 2909 | * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in): |
29ca91f7 JW |
2910 | Override endianness bit in mode. |
2911 | * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test. | |
2912 | * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test | |
2913 | that little_endian mode is ignored. | |
2914 | * testsuite/experimental/filesystem/path/native/string.cc: New test. | |
2915 | ||
14905251 JW |
2916 | PR libstdc++/70609 |
2917 | * src/filesystem/ops.cc (close_fd): New function. | |
2918 | (do_copy_file): Set permissions before copying file contents. Check | |
2919 | result of closing file descriptors. Don't copy streambuf when file | |
2920 | is empty. | |
2921 | (copy(const path&, const path&, copy_options, error_code&)): Use | |
2922 | lstat for source file when copy_symlinks is set. | |
2923 | * testsuite/experimental/filesystem/operations/copy.cc: Test copy(). | |
2924 | ||
9c476ad4 JW |
2925 | * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^, |
2926 | operator~ operator&=, operator|=, operator^=): Add noexcept to | |
2927 | overloaded operators for copy_options, perms and directory_options. | |
2928 | * src/filesystem/ops.cc (make_file_type, make_file_status, | |
2929 | is_not_found_errno, file_time): Add noexcept. | |
2930 | ||
d855ad89 ESR |
2931 | 2016-04-19 Edward Smith-Rowland <3dw4rd@verizon.net> |
2932 | ||
2933 | * include/bits/c++14_warning.h: Do not refer C++14 as experimental. | |
2934 | ||
8dc1e574 JW |
2935 | 2016-04-18 Jonathan Wakely <jwakely@redhat.com> |
2936 | ||
0cded43d JW |
2937 | PR libstdc++/41759 |
2938 | * include/bits/random.h: Reword static assertion messages to state | |
2939 | positive conditions. | |
2940 | * include/bits/random.tcc: Likewise. | |
2941 | * include/bits/uniform_int_dist.h: Likewise. | |
2942 | * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error | |
2943 | patterns. | |
2944 | ||
90751aa7 JW |
2945 | * include/std/function (_Bind, _Bind_result): Remove unused typedefs. |
2946 | ||
351a5f81 JW |
2947 | * config/cpu/sh/atomicity.h: Fix typo in comment. |
2948 | ||
b05cf382 JW |
2949 | PR libstdc++/70294 |
2950 | * include/std/thread (operator<, operator==): Move definitions to | |
2951 | namespace-scope. | |
2952 | * testsuite/30_threads/thread/id/70294.cc: New test. | |
2953 | ||
4ed6e524 JW |
2954 | * testsuite/18_support/bad_exception/23591_thread-1.c: Add |
2955 | -Wno-pedantic to dg-options. | |
2956 | * testsuite/20_util/align/2.cc: Use type as operand of alignof. | |
2957 | * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic | |
2958 | to dg-options. | |
2959 | * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc: | |
2960 | Remove extra semi-colon. | |
2961 | * testsuite/23_containers/array/tuple_interface/tuple_element.cc: | |
2962 | Always supply second argument to static_assert. | |
2963 | * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra | |
2964 | semi-colon. | |
2965 | * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to | |
2966 | dg-options. | |
2967 | * testsuite/26_numerics/complex/literals/values.cc: Likewise. | |
2968 | * testsuite/29_atomics/atomic/60695.cc: Likewise. | |
2969 | * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of | |
2970 | alignof when operand is an object not a type. | |
2971 | * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options. | |
2972 | * testsuite/decimal/make-decimal.cc: Likewise. | |
2973 | * testsuite/experimental/type_traits/value.cc: Always supply second | |
2974 | argument to static_assert. | |
2975 | * testsuite/util/testsuite_common_types.h: Use __extension__ for | |
2976 | __int128 types. | |
2977 | ||
abb6e0a1 JW |
2978 | * testsuite/experimental/type_erased_allocator/1.cc: Don't include |
2979 | internal header. | |
2980 | * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise. | |
2981 | * testsuite/experimental/type_erased_allocator/2.cc: Likewise. | |
2982 | * testsuite/experimental/type_erased_allocator/uses_allocator.cc: | |
2983 | Likewise. Add licence and change to compile-only test. | |
2984 | ||
6b6147dd JW |
2985 | * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to |
2986 | unused parameter. | |
2987 | * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise. | |
2988 | ||
8dc1e574 JW |
2989 | * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare |
2990 | warnings. | |
2991 | ||
80dbaf98 ESR |
2992 | 2016-04-17 Edward Smith-Rowland <3dw4rd@verizon.net> |
2993 | ||
2994 | * include/bits/specfun.h: Trivial comment misspelling. | |
2995 | ||
9f285ccb JM |
2996 | 2016-04-14 Jason Merrill <jason@redhat.com> |
2997 | ||
2998 | Revert Jonathan's empty ABI change from yesterday. | |
2999 | ||
342fac95 MS |
3000 | 2016-04-13 Martin Sebor <msebor@redhat.com> |
3001 | ||
3002 | PR c++/69517 | |
3003 | * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA | |
3004 | upper bound is positive. | |
3005 | ||
a6297ab5 JW |
3006 | 2016-04-13 Jonathan Wakely <jwakely@redhat.com> |
3007 | ||
3008 | * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES, | |
3009 | _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define. | |
3010 | * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures | |
3011 | of functions taking empty structs by value. Add a template parameter | |
3012 | to overloads without hints. Rename overloads with hints to | |
3013 | _M_emplace_hint. | |
3014 | (_Hashtable::_M_erase(true_type, const_iterator), | |
3015 | _Hashtable::_M_erase(false_type, const_iterator)): Change signatures | |
3016 | by reordering parameters. | |
3017 | * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call | |
3018 | _M_emplace_hint instead of _M_emplace. | |
3019 | * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc), | |
3020 | shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY. | |
3021 | * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count, | |
3022 | __shared_ptr): Likewise. | |
3023 | * include/bits/stl_algo.h (replace_if): Likewise. | |
3024 | * include/bits/stl_pair.h (piecewise_construct_t, | |
3025 | piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES. | |
3026 | * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg, | |
3027 | __uses_alloc0): Likewise. | |
3028 | * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise. | |
3029 | * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error. | |
3030 | * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise. | |
3031 | * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise. | |
3032 | * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise. | |
3033 | * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise. | |
3034 | * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise. | |
3035 | ||
0c39f36d ESR |
3036 | 2016-04-12 Edward Smith-Rowland <3dw4rd@verizon.net> |
3037 | ||
3038 | Document C++17/TR29124 C++ Special Math Functions. | |
3039 | * include/bits/specfun.h: Add Doxygen markup. | |
3040 | ||
6da8b931 JW |
3041 | 2016-04-07 Jonathan Wakely <jwakely@redhat.com> |
3042 | ||
3043 | * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass. | |
3044 | ||
49a52ebc EB |
3045 | 2016-04-06 Eric Botcazou <ebotcazou@adacore.com> |
3046 | ||
3047 | * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null. | |
3048 | * src/Makefile.in: Regenerate. | |
3049 | ||
87cec93e JW |
3050 | 2016-04-05 Jonathan Wakely <jwakely@redhat.com> |
3051 | ||
d2aee115 JW |
3052 | PR libstdc++/70554 |
3053 | * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test | |
3054 | __atomic_fetch_add for bool. | |
3055 | * configure: Regenerate. | |
3056 | ||
d5ec69f3 JW |
3057 | * testsuite/30_threads/thread/70503.cc: Require -static to work. |
3058 | ||
87cec93e JW |
3059 | PR libstdc++/70503 |
3060 | * src/c++11/thread.cc (execute_native_thread_routine, | |
3061 | execute_native_thread_routine_compat): Give internal linkage. | |
3062 | * testsuite/30_threads/thread/70503.cc: New test. | |
3063 | ||
7b3318c4 VV |
3064 | 2016-04-05 Ville Voutilainen <ville.voutilainen@gmail.com> |
3065 | ||
3066 | PR libstdc++/70437 | |
3067 | * include/bits/stl_pair.h (_ConstructiblePair, | |
3068 | _ImplicitlyConvertiblePair, _MoveConstructiblePair, | |
3069 | _ImplicitlyMoveConvertiblePair): Add shortcut conditions | |
3070 | for same-type cases. | |
3071 | * testsuite/20_util/pair/70437.cc: New. | |
3072 | ||
00e6c25a JW |
3073 | 2016-03-24 Jonathan Wakely <jwakely@redhat.com> |
3074 | ||
3075 | PR libstdc++/69945 | |
3076 | * config/abi/pre/gnu.ver: Add new symbol. | |
3077 | * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define. | |
3078 | * testsuite/18_support/free_eh_pool.cc: New test. | |
3079 | ||
bfd84e6b BE |
3080 | 2016-03-23 Bernd Edlinger <bernd.edlinger@hotmail.de> |
3081 | ||
3082 | * include/Makefile.am (install-freestanding-headers): Add | |
3083 | concept_check.h and move.h to the installed headers. | |
3084 | * include/Makefile.in: Regenerated. | |
3085 | * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for | |
3086 | freestanding implementations. | |
3087 | * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention | |
3088 | that this macro has no effect for freestanding implementations. | |
3089 | * doc/html/manual/using_macros.html: Likewise. | |
3090 | ||
86715b09 JW |
3091 | 2016-02-24 Jonathan Wakely <jwakely@redhat.com> |
3092 | ||
3093 | PR libstdc++/69939 | |
3094 | * include/experimental/tuple (__apply_impl): Qualify get and forward. | |
3095 | ||
9aee022e JW |
3096 | 2016-02-23 Jonathan Wakely <jwakely@redhat.com> |
3097 | ||
be9967e8 JW |
3098 | * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__. |
3099 | * doc/html/*: Regenerate. | |
3100 | ||
9aee022e JW |
3101 | PR libstdc++/69893 |
3102 | * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc, | |
3103 | exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint, | |
3104 | llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter, | |
3105 | nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma, | |
3106 | trunc) [__cplusplus >= 201103L]: Import from namespace std. | |
3107 | (fabs) [__cplusplus < 201103L]: Import from namespace std. | |
3108 | * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]: | |
3109 | Likewise. | |
3110 | * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global | |
3111 | namespace before including TR1 headers. | |
3112 | * testsuite/tr1/headers/c++200x/math.cc: New test. | |
3113 | ||
5f6dd593 BE |
3114 | 2016-02-23 Bernd Edlinger <bernd.edlinger@hotmail.de> |
3115 | ||
3116 | PR libstdc++/69881 | |
3117 | * include/c_global/cstdarg: Undefine __need___va_list. | |
3118 | * include/c_global/cstddef: Undefine all kinds of __need_*. | |
3119 | ||
244901a5 TS |
3120 | 2016-02-16 Tim Shen <timshen@google.com> |
3121 | ||
3122 | PR libstdc++/69794 | |
3123 | * include/bits/regex_scanner.h: Add different special character | |
3124 | sets for grep and egrep regex. | |
3125 | * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly. | |
3126 | * testsuite/28_regex/regression.cc: Add new testcase. | |
3127 | ||
cc07da33 JW |
3128 | 2016-02-08 Jonathan Wakely <jwakely@redhat.com> |
3129 | ||
2158532f JW |
3130 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally |
3131 | added 'constexpr' in previous commit. | |
3132 | * configure: Regenerate. | |
3133 | ||
cc07da33 JW |
3134 | PR libstdc++/48891 |
3135 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan | |
3136 | checks for all targets except *-*-solaris2.* and ensure we find the | |
3137 | libc math.h header not our own. | |
3138 | * configure: Regenerate. | |
3139 | ||
acc04646 DV |
3140 | 2016-02-05 Dominik Vogt <vogt@linux.vnet.ibm.com> |
3141 | ||
3142 | * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC): | |
3143 | New file. Copied over from s390-linux-gnu. | |
3144 | ||
dbcda3ee JW |
3145 | 2016-02-04 Jonathan Wakely <jwakely@redhat.com> |
3146 | ||
3555173f JW |
3147 | PR libstdc++/69626 |
3148 | * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions | |
3149 | with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB. | |
3150 | * config.h.in: Regenerate. | |
3151 | * configure: Regenerate. | |
3152 | * testsuite/21_strings/c_strings/char/69626.cc: New. | |
3153 | ||
15ebf379 JW |
3154 | * doc/html/index.html: Regenerate. |
3155 | ||
dbcda3ee JW |
3156 | * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI. |
3157 | * doc/xml/manual/spine.xml: Update copyright years and author blurb. | |
3158 | * doc/html/*: Regenerate. | |
3159 | ||
571512d5 BE |
3160 | 2016-02-01 Bernd Edlinger <bernd.edlinger@hotmail.de> |
3161 | ||
3162 | PR libstdc++/69581 | |
3163 | * include/c_compatibility/math.h: Move header guards. | |
3164 | * include/c_compatibility/stdlib.h: Likewise. | |
3165 | ||
f597d5f7 JW |
3166 | 2016-01-29 Jonathan Wakely <jwakely@redhat.com> |
3167 | ||
3168 | PR libstdc++/69506 | |
3169 | * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. | |
3170 | ||
69b0daeb JDA |
3171 | 2016-01-28 John David Anglin <danglin@gcc.gnu.org> |
3172 | ||
3173 | PR libstdc++/69450 | |
3174 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete | |
3175 | isinf and isnan functions into two independent checks. Check on hpux. | |
3176 | * config.h.in: Regenerate. | |
3177 | * configure: Regenerate. | |
3178 | * include/c_global/cmath (isinf(double), isnan(double)): Use | |
3179 | _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN, | |
3180 | respectively. | |
3181 | ||
8dc781e4 JJ |
3182 | 2016-01-27 Jakub Jelinek <jakub@redhat.com> |
3183 | ||
3184 | * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>. | |
3185 | ||
bae87f7f JW |
3186 | 2016-01-27 Jonathan Wakely <jwakely@redhat.com> |
3187 | ||
3188 | PR libstdc++/69295 | |
3189 | * testsuite/ext/special_functions/hyperg/check_value.cc: Use | |
3190 | -ffp-contract=off, and -ffloat-store to disable excess precision. | |
3191 | * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use | |
3192 | -ffp-contract=off. | |
3193 | ||
f1d591e8 JW |
3194 | 2016-01-26 Jonathan Wakely <jwakely@redhat.com> |
3195 | ||
3196 | PR libstdc++/69478 | |
3197 | * include/bits/stl_algobase.h (__copy_move<_IsMove, true, | |
3198 | random_access_iterator_tag>): Check is_move_assignable when moving. | |
3199 | (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>): | |
3200 | Likewise. | |
3201 | * testsuite/25_algorithms/copy/move_iterators/69478.cc: New. | |
3202 | * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New. | |
3203 | * testsuite/25_algorithms/move/69478.cc: New. | |
3204 | * testsuite/25_algorithms/move_backward/69478.cc: new. | |
3205 | ||
8964d2a0 AP |
3206 | 2016-01-26 Andris Pavenis <andris.pavenis@iki.fi> |
3207 | ||
3208 | * include/c_compatibility/stdlib.h: Include wide character related | |
3209 | definitions only when they are available in cstdlib. | |
3210 | ||
2944621e JW |
3211 | 2016-01-25 Jonathan Wakely <jwakely@redhat.com> |
3212 | ||
3213 | PR libstdc++/69464 | |
3214 | * include/Makefile.am: Add new header. | |
3215 | * include/Makefile.in: Regenerate. | |
3216 | * include/bits/random.h (uniform_int_distribution): Move to | |
3217 | bits/uniform_int_dist.h. | |
3218 | * include/bits/random.tcc (uniform_int_distribution::operator(), | |
3219 | uniform_int_distribution::__generate_impl): Likewise. | |
3220 | * include/bits/uniform_int_dist.h: New header. | |
3221 | * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include | |
3222 | <bits/uniform_int_dist.h> instead of <random>. | |
3223 | * testsuite/20_util/specialized_algorithms/uninitialized_copy/ | |
3224 | move_iterators/1.cc: Include correct header for uninitialized_copy. | |
3225 | * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/ | |
3226 | move_iterators/1.cc: Likewise. | |
3227 | * testsuite/25_algorithms/nth_element/58800.cc: Include correct | |
3228 | header for vector. | |
3229 | * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines. | |
3230 | ||
3676c087 JDA |
3231 | 2016-01-23 John David Anglin <danglin@gcc.gnu.org> |
3232 | ||
3233 | PR libstdc++/69446 | |
3234 | * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. | |
3235 | ||
02dc2419 ESR |
3236 | 2016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net> |
3237 | ||
3238 | TR29124 C++ Special Math - <math.h> pulls funcs into global namespace. | |
3239 | * include/c_compatibility/math.h: Import the TR29124 functions | |
3240 | into the global namespace. | |
3241 | * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove | |
3242 | xfail and make compile-only. | |
3243 | * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto. | |
3244 | * testsuite/special_functions/03_beta/compile_2.cc: Ditto. | |
3245 | * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto. | |
3246 | * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto. | |
3247 | * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto. | |
3248 | * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto. | |
3249 | * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto. | |
3250 | * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto. | |
3251 | * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto. | |
3252 | * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto. | |
3253 | * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto. | |
3254 | * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto. | |
3255 | * testsuite/special_functions/14_expint/compile_2.cc: Ditto. | |
3256 | * testsuite/special_functions/15_hermite/compile_2.cc: Ditto. | |
3257 | * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto. | |
3258 | * testsuite/special_functions/17_legendre/compile_2.cc: Ditto. | |
3259 | * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto. | |
3260 | * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto. | |
3261 | * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto. | |
3262 | * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto. | |
3263 | ||
350fe282 JW |
3264 | 2016-01-22 Jonathan Wakely <jwakely@redhat.com> |
3265 | ||
d1fb377c JW |
3266 | PR libstdc++/69116 |
3267 | * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only | |
3268 | define result_type for types which can be safely used with valarrays. | |
3269 | * testsuite/26_numerics/valarray/69116.cc: New. | |
3270 | ||
350fe282 JW |
3271 | PR libstdc++/69413 |
3272 | * config/os/gnu-linux/os_defines.h: Define | |
3273 | _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC. | |
3274 | * include/c_global/cmath (isinf, isnan): Check it. | |
3275 | * doc/xml/manual/internals.xml: Document it. | |
3276 | * doc/html/*: Regenerate. | |
3277 | ||
ab56cbed JW |
3278 | 2016-01-21 Jonathan Wakely <jwakely@redhat.com> |
3279 | ||
3280 | PR libstdc++/69406 | |
3281 | * include/bits/cpp_type_traits.h: Ensure C++ language linkage. | |
3282 | * include/ext/type_traits.h: Likewise. | |
3283 | * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros | |
3284 | for presence of C headers. | |
3285 | * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust | |
3286 | dg-error line number. | |
3287 | * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise. | |
3288 | * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise. | |
3289 | * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise. | |
3290 | ||
7e10bcfa TR |
3291 | 2016-01-20 Torvald Riegel <triegel@redhat.com> |
3292 | ||
3293 | PR libstdc++/69310 | |
3294 | * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. | |
3295 | ||
eac437bf JW |
3296 | 2016-01-20 Jonathan Wakely <jwakely@redhat.com> |
3297 | ||
3f93466a JW |
3298 | PR libstdc++/60401 |
3299 | * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt, | |
3300 | copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, | |
3301 | lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint, | |
3302 | nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn, | |
3303 | tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]: | |
3304 | Add using declarations. | |
3305 | * testsuite/26_numerics/headers/cmath/60401.cc: New. | |
3306 | ||
eac437bf JW |
3307 | PR libstdc++/69386 |
3308 | * include/c_global/ccomplex: Ensure C++ language linkage. | |
3309 | * include/c_global/cmath: Likewise. | |
3310 | * include/c_global/cstdlib: Likewise. | |
3311 | * include/c_global/ctgmath: Likewise. | |
3312 | * testsuite/17_intro/headers/c++2011/linkage.cc: New. | |
3313 | ||
96e19ada JW |
3314 | 2016-01-19 Jonathan Wakely <jwakely@redhat.com> |
3315 | ||
3316 | PR libstdc++/14608 | |
3317 | PR libstdc++/60401 | |
3318 | * include/Makefile.am: Use c_compatibility math.h and stdlib.h for | |
3319 | --enable-cheaders=c_global configs. | |
3320 | * include/Makefile.in: Regenerate. | |
3321 | * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C | |
3322 | test and allow inclusion from C files. | |
3323 | * include/c_compatibility/stdlib.h: Likewise. Support freestanding. | |
3324 | (at_quick_exit, quick_exit): Add using directives. | |
3325 | * include/c_global/cmath: Use #include_next for math.h. | |
3326 | * include/c_global/cstdlib: Use #include_next for stdlib.h. | |
3327 | * testsuite/26_numerics/headers/cmath/14608.cc: New. | |
3328 | * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc: | |
3329 | Remove xfail for most targets. | |
3330 | * testsuite/26_numerics/headers/cstdlib/60401.cc: New. | |
3331 | ||
9585381a TR |
3332 | 2016-01-18 Torvald Riegel <triegel@redhat.com> |
3333 | ||
3334 | * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New. | |
3335 | (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF | |
3336 | and move after its definition. | |
3337 | * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override. | |
3338 | * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of | |
3339 | __GXX_WEAK__, and only provide transactional clones if | |
3340 | _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm | |
3341 | functions. | |
3342 | ||
f5460595 JW |
3343 | 2016-01-18 Jonathan Wakely <jwakely@redhat.com> |
3344 | ||
c91bcffc JW |
3345 | PR libstdc++/60637 |
3346 | * testsuite/26_numerics/headers/cmath/60637.cc: Add test. | |
3347 | ||
d75d9f91 | 3348 | PR libstdc++/69243 |
9c5ad80e JW |
3349 | * include/std/functional (_Function_base::_M_not_empty_function): |
3350 | Change overloads for pointers to take arguments by value. | |
3351 | * testsuite/20_util/function/cons/57465.cc: Add tests for | |
3352 | pointer-to-member cases. | |
3353 | ||
f5460595 JW |
3354 | PR libstdc++/69340 |
3355 | * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions): | |
3356 | Use macros for exception handling and fix unused parameter warning. | |
3357 | ||
271366f6 JDA |
3358 | 2016-01-17 John David Anglin <danglin@gcc.gnu.org> |
3359 | ||
3360 | PR libstdc++/68734 | |
3361 | * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update. | |
3362 | ||
7a5d1d34 TR |
3363 | 2016-01-17 Torvald Riegel <triegel@redhat.com> |
3364 | ||
3365 | * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert. | |
3366 | ||
5445d5bf L |
3367 | 2016-01-16 H.J. Lu <hongjiu.lu@intel.com> |
3368 | ||
3369 | * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add | |
3370 | __int128 symbols. | |
3371 | ||
3d076231 JW |
3372 | 2016-01-15 Jonathan Wakely <jwakely@redhat.com> |
3373 | ||
d7c1581c JW |
3374 | PR libstdc++/69293 |
3375 | * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add | |
3376 | static assertion that type is constructible from the arguments. | |
3377 | * testsuite/20_util/scoped_allocator/69293_neg.cc: New. | |
3378 | * testsuite/20_util/uses_allocator/69293_neg.cc: New. | |
3379 | * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error. | |
3380 | ||
3d076231 JW |
3381 | PR libstdc++/69294 |
3382 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf | |
3383 | and isnan on AIX. Quote variables. | |
3384 | * configure: Regenerate. | |
3385 | ||
a04d5fc9 TR |
3386 | 2016-01-15 Torvald Riegel <triegel@redhat.com> |
3387 | ||
3388 | * include/bits/basic_string.h (basic_string): Declare friends. | |
3389 | * include/bits/c++config (_GLIBCXX_TXN_SAFE, | |
3390 | _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New. | |
3391 | * include/std/stdexcept (logic_error, domain_error, invalid_argument, | |
3392 | length_error, out_of_range, runtime_error, range_error, | |
3393 | underflow_error, overflow_error): Declare members as transaction-safe. | |
3394 | (logic_error, runtime_error): Declare friend functions. | |
3395 | * libsupc++/exception (exception, bad_exception): Declare members as | |
3396 | transaction-safe. | |
3397 | * src/c++11/cow-stdexcept.cc: Define transactional clones for the | |
3398 | transaction-safe members of exceptions and helper functions. | |
3399 | * libsupc++/eh_exception.cc: Adjust and define transactional clones. | |
3400 | * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones. | |
3401 | (CXXABI_1.3.10): New. | |
3402 | * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New. | |
3403 | (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW. | |
3404 | * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING. | |
3405 | * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h. | |
3406 | * include/Makefile.in: Regenerate. | |
3407 | * config.h.in: Regenerate. | |
3408 | * configure: Regenerate. | |
3409 | * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10. | |
3410 | ||
cebeb718 SE |
3411 | 2016-01-15 Steve Ellcey <sellcey@imgtec.com> |
3412 | ||
3413 | * include/ext/random.tcc: Use __builtin_isfinite instead of | |
3414 | std::isfinite. | |
3415 | ||
3b07547d JW |
3416 | 2016-01-15 Jonathan Wakely <jwakely@redhat.com> |
3417 | ||
3418 | * include/bits/std_mutex.h: Fix Doxygen @file name. | |
3419 | ||
2be75957 ESR |
3420 | 2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net> |
3421 | Jonathan Wakely <jwakely@redhat.com> | |
3422 | Florian Goth <CaptainSifff@gmx.de> | |
3423 | ||
3424 | Implement TR29124 C++ special Math Functions. | |
3425 | * include/Makefile.am: Add new headers. | |
3426 | * include/Makefile.in: Regenerate. | |
3427 | * include/bits/specfun.h: New. | |
3428 | * include/c_global/cmath: Adjust for both tr1 and tr29124 maths. | |
3429 | * include/tr1/bessel_function.tcc: Ditto. | |
3430 | * include/tr1/beta_function.tcc: Ditto. | |
3431 | * include/tr1/cmath: Ditto. | |
3432 | * include/tr1/ell_integral.tcc: Ditto. | |
3433 | * include/tr1/exp_integral.tcc: Ditto. | |
3434 | * include/tr1/gamma.tcc: Ditto. | |
3435 | * include/tr1/hypergeometric.tcc: Ditto. | |
3436 | * include/tr1/legendre_function.tcc: Ditto. | |
3437 | * include/tr1/modified_bessel_func.tcc: Ditto. | |
3438 | * include/tr1/poly_hermite.tcc: Ditto. | |
3439 | * include/tr1/poly_laguerre.tcc: Ditto. | |
3440 | * include/tr1/riemann_zeta.tcc: Ditto. | |
3441 | * include/tr1/special_function_util.h: Ditto. | |
3442 | * testsuite/ext/special_functions/conf_hyperg: New. | |
3443 | * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New. | |
3444 | * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New. | |
3445 | * testsuite/ext/special_functions/conf_hyperg/compile.cc: New. | |
3446 | * testsuite/ext/special_functions/hyperg: New. | |
3447 | * testsuite/ext/special_functions/hyperg/check_nan.cc: New. | |
3448 | * testsuite/ext/special_functions/hyperg/check_value.cc: New. | |
3449 | * testsuite/ext/special_functions/hyperg/compile.cc: New. | |
3450 | * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory. | |
3451 | * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New. | |
3452 | * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New. | |
3453 | * testsuite/special_functions/01_assoc_laguerre/compile.cc: New. | |
3454 | * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New. | |
3455 | * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New. | |
3456 | * testsuite/special_functions/02_assoc_legendre/check_value.cc: New. | |
3457 | * testsuite/special_functions/02_assoc_legendre/compile.cc: New. | |
3458 | * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New. | |
3459 | * testsuite/special_functions/03_beta/check_nan.cc: New. | |
3460 | * testsuite/special_functions/03_beta/check_value.cc: New. | |
3461 | * testsuite/special_functions/03_beta/compile.cc: New. | |
3462 | * testsuite/special_functions/03_beta/compile_2.cc: New. | |
3463 | * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New. | |
3464 | * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New. | |
3465 | * testsuite/special_functions/04_comp_ellint_1/compile.cc: New. | |
3466 | * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New. | |
3467 | * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New. | |
3468 | * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New. | |
3469 | * testsuite/special_functions/05_comp_ellint_2/compile.cc: New. | |
3470 | * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New. | |
3471 | * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New. | |
3472 | * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New. | |
3473 | * testsuite/special_functions/06_comp_ellint_3/compile.cc: New. | |
3474 | * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New. | |
3475 | * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New. | |
3476 | * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New. | |
3477 | * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New. | |
3478 | * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New. | |
3479 | * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New. | |
3480 | * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New. | |
3481 | * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New. | |
3482 | * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New. | |
3483 | * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New. | |
3484 | * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New. | |
3485 | * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New. | |
3486 | * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New. | |
3487 | * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New. | |
3488 | * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New. | |
3489 | * testsuite/special_functions/10_cyl_neumann/check_value.cc: New. | |
3490 | * testsuite/special_functions/10_cyl_neumann/compile.cc: New. | |
3491 | * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New. | |
3492 | * testsuite/special_functions/11_ellint_1/check_nan.cc: New. | |
3493 | * testsuite/special_functions/11_ellint_1/check_value.cc: New. | |
3494 | * testsuite/special_functions/11_ellint_1/compile.cc: New. | |
3495 | * testsuite/special_functions/11_ellint_1/compile_2.cc: New. | |
3496 | * testsuite/special_functions/12_ellint_2/check_nan.cc: New. | |
3497 | * testsuite/special_functions/12_ellint_2/check_value.cc: New. | |
3498 | * testsuite/special_functions/12_ellint_2/compile.cc: New. | |
3499 | * testsuite/special_functions/12_ellint_2/compile_2.cc: New. | |
3500 | * testsuite/special_functions/13_ellint_3/check_nan.cc: New. | |
3501 | * testsuite/special_functions/13_ellint_3/check_value.cc: New. | |
3502 | * testsuite/special_functions/13_ellint_3/compile.cc: New. | |
3503 | * testsuite/special_functions/13_ellint_3/compile_2.cc: New. | |
3504 | * testsuite/special_functions/14_expint/check_nan.cc: New. | |
3505 | * testsuite/special_functions/14_expint/check_value.cc: New. | |
3506 | * testsuite/special_functions/14_expint/compile.cc: New. | |
3507 | * testsuite/special_functions/14_expint/compile_2.cc: New. | |
3508 | * testsuite/special_functions/15_hermite/check_nan.cc: New. | |
3509 | * testsuite/special_functions/15_hermite/check_value.cc: New. | |
3510 | * testsuite/special_functions/15_hermite/compile.cc: New. | |
3511 | * testsuite/special_functions/15_hermite/compile_2.cc: New. | |
3512 | * testsuite/special_functions/16_laguerre/check_nan.cc: New. | |
3513 | * testsuite/special_functions/16_laguerre/check_value.cc: New. | |
3514 | * testsuite/special_functions/16_laguerre/compile.cc: New. | |
3515 | * testsuite/special_functions/16_laguerre/compile_2.cc: New. | |
3516 | * testsuite/special_functions/17_legendre/check_nan.cc: New. | |
3517 | * testsuite/special_functions/17_legendre/check_value.cc: New. | |
3518 | * testsuite/special_functions/17_legendre/compile.cc: New. | |
3519 | * testsuite/special_functions/17_legendre/compile_2.cc: New. | |
3520 | * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New. | |
3521 | * testsuite/special_functions/18_riemann_zeta/check_value.cc: New. | |
3522 | * testsuite/special_functions/18_riemann_zeta/compile.cc: New. | |
3523 | * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New. | |
3524 | * testsuite/special_functions/19_sph_bessel/check_nan.cc: New. | |
3525 | * testsuite/special_functions/19_sph_bessel/check_value.cc: New. | |
3526 | * testsuite/special_functions/19_sph_bessel/compile.cc: New. | |
3527 | * testsuite/special_functions/19_sph_bessel/compile_2.cc: New. | |
3528 | * testsuite/special_functions/20_sph_legendre/check_nan.cc: New. | |
3529 | * testsuite/special_functions/20_sph_legendre/check_value.cc: New. | |
3530 | * testsuite/special_functions/20_sph_legendre/compile.cc: New. | |
3531 | * testsuite/special_functions/20_sph_legendre/compile_2.cc: New. | |
3532 | * testsuite/special_functions/21_sph_neumann/check_nan.cc: New. | |
3533 | * testsuite/special_functions/21_sph_neumann/check_value.cc: New. | |
3534 | * testsuite/special_functions/21_sph_neumann/compile.cc: New. | |
3535 | * testsuite/special_functions/21_sph_neumann/compile_2.cc: New. | |
3536 | * testsuite/util/specfun_testcase.h: New. | |
3537 | * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases. | |
3538 | * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto. | |
3539 | * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto. | |
3540 | * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto. | |
3541 | * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto. | |
3542 | * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto. | |
3543 | * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New. | |
3544 | ||
39a1d8c8 JW |
3545 | 2016-01-13 Jonathan Wakely <jwakely@redhat.com> |
3546 | ||
3547 | PR libstdc++/48891 | |
3548 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf | |
3549 | and isnan functions. | |
3550 | * config.h.in: Regenerate. | |
3551 | * configure: Regenerate. | |
3552 | * include/c_global/cmath (isinf(double), isnan(double)) | |
3553 | [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive. | |
3554 | * testsuite/26_numerics/headers/cmath/48891.cc: New. | |
3555 | ||
e862906c RO |
3556 | 2016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
3557 | ||
3558 | PR libstdc++/66006 | |
3559 | * configure.host (abi_baseline_pair): Use separate baseline for | |
3560 | Solaris 11+ and Solaris 10 with gld. | |
3561 | * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file. | |
3562 | * config/abi/post/solaris2.11/baseline_symbols.txt: New file. | |
3563 | * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file. | |
3564 | ||
26b5ace7 DK |
3565 | 2016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com> |
3566 | ||
3567 | PR libstdc++/68877 | |
3568 | * include/std/type_traits: Following N4511, reimplement __is_swappable | |
3569 | and __is_nothrow_swappable. Move __is_swappable to namespace std, | |
3570 | adjust callers. Use __is_nothrow_swappable in swap. | |
3571 | * include/bits/move.h: Use __is_nothrow_swappable in swap. | |
3572 | * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove | |
3573 | __is_swappable related tests. | |
3574 | * testsuite/20_util/is_swappable/value.cc: New. | |
3575 | * testsuite/20_util/is_swappable/requirements/ | |
3576 | explicit_instantiation.cc: New. | |
3577 | * testsuite/20_util/is_swappable/requirements/typedefs.cc: New. | |
3578 | * testsuite/25_algorithms/swap/68877.cc: New. | |
3579 | ||
1c3c7c41 JW |
3580 | 2016-01-12 Jonathan Wakely <jwakely@redhat.com> |
3581 | ||
bd285a8b JW |
3582 | * testsuite/20_util/function/68995.cc: Test reference_wrapper cases. |
3583 | ||
1c3c7c41 JW |
3584 | PR libstdc++/69005 |
3585 | PR libstdc++/69222 | |
3586 | * include/std/functional (function::_Invoke): Remove, use result_of. | |
3587 | (function::_Callable): Replace alias template with class template | |
3588 | and use partial specialization instead of _NotSelf alias template. | |
3589 | (function(_Functor)): Add "not self" constraint so that _Callable is | |
3590 | not used while type is incomplete. | |
3591 | * testsuite/20_util/function/69222.cc: New. | |
3592 | ||
1517bc30 JW |
3593 | 2016-01-11 Jonathan Wakely <jwakely@redhat.com> |
3594 | ||
3595 | PR libstdc++/60976 | |
3596 | * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>): | |
3597 | Define partial specialization. | |
3598 | * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and | |
3599 | destroy members to std::allocator explicit specialization. | |
3600 | ||
e525d78c JW |
3601 | 2016-01-08 Jonathan Wakely <jwakely@redhat.com> |
3602 | ||
8babc12b JW |
3603 | * testsuite/26_numerics/headers/cmath/ |
3604 | c99_classification_macros_c++.cc: Rename to ... | |
3605 | * testsuite/26_numerics/headers/cmath/ | |
3606 | c99_classification_macros_c++98.cc: Here and add -std=gnu++98. | |
3607 | * testsuite/26_numerics/headers/cmath/ | |
3608 | c99_classification_macros_c++0x.cc: Rename to ... | |
3609 | * testsuite/26_numerics/headers/cmath/ | |
3610 | c99_classification_macros_c++11.cc: Here. | |
3611 | ||
32a8c97f | 3612 | PR libstdc++/69190 |
e525d78c JW |
3613 | * include/bits/uses_allocator.h: Add missing include. |
3614 | ||
f885fa89 JW |
3615 | 2016-01-07 Jonathan Wakely <jwakely@redhat.com> |
3616 | ||
3617 | PR libstdc++/69105 | |
3618 | PR libstdc++/69106 | |
3619 | PR libstdc++/69114 | |
3620 | * include/bits/stl_iterator.h (back_insert_iterator, | |
3621 | front_insert_iterator, insert_iterator): Use __addressof (LWG 2324). | |
3622 | * include/bits/uses_allocator.h (__use_alloc): Use __addressof. | |
3623 | * include/std/future (__future::base::_State_baseV2::__setter): | |
3624 | Likewise. | |
3625 | * include/std/scoped_allocator (__outermost): Likewise. | |
3626 | * testsuite/20_util/scoped_allocator/69114.cc: New. | |
3627 | * testsuite/20_util/uses_allocator/69114.cc: New. | |
3628 | * testsuite/30_threads/promise/69106.cc: New. | |
3629 | ||
0c3e5dd1 JW |
3630 | 2016-01-06 Jonathan Wakely <jwakely@redhat.com> |
3631 | ||
373a75fb JW |
3632 | PR libstdc++/69092 |
3633 | * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>): | |
3634 | Remove _GLIBCXX_NOEXCEPT. | |
3635 | testsuite/21_strings/basic_string/cons/char/69092.cc: New. | |
3636 | ||
0c3e5dd1 JW |
3637 | * include/Makefile.am: Adjust. |
3638 | * include/Makefile.in: Regenerate. | |
3639 | * include/bits/mutex.h: Rename to bits/std_mutex.h. | |
3640 | * include/std/condition_variable: Adjust include. | |
3641 | * include/std/mutex: Likewise. | |
3642 | ||
818ab71a | 3643 | 2016-01-04 Jakub Jelinek <jakub@redhat.com> |
5624e564 JJ |
3644 | |
3645 | Update copyright years. | |
b4df5e92 | 3646 | \f |
818ab71a | 3647 | Copyright (C) 2016 Free Software Foundation, Inc. |
b4df5e92 JW |
3648 | |
3649 | Copying and distribution of this file, with or without modification, | |
3650 | are permitted in any medium without royalty provided the copyright | |
3651 | notice and this notice are preserved. |