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