]>
Commit | Line | Data |
---|---|---|
ca8f2cb1 VV |
1 | 2016-07-28 Ville Voutilainen <ville.voutilainen@gmail.com> |
2 | ||
3 | Implement std::string_view and P0254r2, | |
4 | Integrating std::string_view and std::string. | |
5 | * include/Makefile.am: Add string_view and string_view.tcc | |
6 | to the exported headers. | |
7 | * include/Makefile.in: Likewise. | |
8 | * include/bits/basic_string.h: Include <string_view> in C++17 mode. | |
9 | (__sv_type): New. | |
10 | (basic_string(__sv_type, const _Alloc&)): Likewise. | |
11 | (operator=(__sv_type)): Likewise. | |
12 | (operator __sv_type()): Likewise. | |
13 | (operator+=(__sv_type)): Likewise. | |
14 | (append(__sv_type __sv)): Likewise. | |
15 | (append(__sv_type, size_type, size_type)): Likewise. | |
16 | (assign(__sv_type)): Likewise. | |
17 | (assign(__sv_type, size_type, size_type)): Likewise. | |
18 | (insert(size_type, __sv_type)): Likewise. | |
19 | (insert(size_type, __sv_type, size_type, size_type)): Likewise. | |
20 | (replace(size_type, size_type, __sv_type)): Likewise. | |
21 | (replace(size_type, size_type, __sv_type, size_type, size_type)): | |
22 | Likewise. | |
23 | (replace(const_iterator, const_iterator, __sv_type)): Likewise. | |
24 | (find(__sv_type, size_type)): Likewise. | |
25 | (rfind(__sv_type, size_type)): Likewise. | |
26 | (find_first_of(__sv_type, size_type)): Likewise. | |
27 | (find_last_of(__sv_type, size_type)): Likewise. | |
28 | (find_first_not_of(__sv_type, size_type)): Likewise. | |
29 | (find_last_not_of(__sv_type, size_type)): Likewise. | |
30 | (compare(__sv_type)): Likewise. | |
31 | (compare(size_type, size_type, __sv_type)): Likewise. | |
32 | (compare(size_type, size_type, __sv_type, size_type, size_type)): | |
33 | Likewise. | |
34 | * include/bits/string_view.tcc: New. | |
35 | * include/std/string_view: Likewise. | |
36 | * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise. | |
37 | * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise. | |
38 | * testsuite/21_strings/basic_string/modifiers/append/char/4.cc: | |
39 | Likewise. | |
40 | * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc: | |
41 | Likewise. | |
42 | * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc: | |
43 | Likewise. | |
44 | * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc: | |
45 | Likewise. | |
46 | * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc: | |
47 | Likewise. | |
48 | * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc: | |
49 | Likewise. | |
50 | * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc: | |
51 | Likewise. | |
52 | * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc: | |
53 | Likewise. | |
54 | * testsuite/21_strings/basic_string/operations/compare/char/2.cc: | |
55 | Likewise. | |
56 | * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc: | |
57 | Likewise. | |
58 | * testsuite/21_strings/basic_string/operations/find/char/5.cc: | |
59 | Likewise. | |
60 | * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc: | |
61 | Likewise. | |
62 | * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise. | |
63 | * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise. | |
64 | * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise. | |
65 | * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise. | |
66 | * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise. | |
67 | * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise. | |
68 | * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise. | |
69 | * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise. | |
70 | * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise. | |
71 | * testsuite/21_strings/basic_string_view/element_access/char/1.cc: | |
72 | Likewise. | |
73 | * testsuite/21_strings/basic_string_view/element_access/char/2.cc: | |
74 | Likewise. | |
75 | * testsuite/21_strings/basic_string_view/element_access/char/empty.cc: | |
76 | Likewise. | |
77 | * testsuite/21_strings/basic_string_view/element_access/char/front_back.cc: | |
78 | Likewise. | |
79 | * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc: | |
80 | Likewise. | |
81 | * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc: | |
82 | Likewise. | |
83 | * testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc: | |
84 | Likewise. | |
85 | * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc: | |
86 | Likewise. | |
87 | * testsuite/21_strings/basic_string_view/include.cc: Likewise. | |
88 | * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise. | |
89 | * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise. | |
90 | * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise. | |
91 | * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc: | |
92 | Likewise. | |
93 | * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc: | |
94 | Likewise. | |
95 | * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc: | |
96 | Likewise. | |
97 | * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc: | |
98 | Likewise. | |
99 | * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc: | |
100 | Likewise. | |
101 | * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: | |
102 | Likewise. | |
103 | * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc: | |
104 | Likewise. | |
105 | * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: | |
106 | Likewise. | |
107 | * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc: | |
108 | Likewise. | |
109 | * testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc: | |
110 | Likewise. | |
111 | * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc: | |
112 | Likewise. | |
113 | * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc: | |
114 | Likewise. | |
115 | * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc: | |
116 | Likewise. | |
117 | * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc: | |
118 | Likewise. | |
119 | * testsuite/21_strings/basic_string_view/operations/data/char/1.cc: | |
120 | Likewise. | |
121 | * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc: | |
122 | Likewise. | |
123 | * testsuite/21_strings/basic_string_view/operations/find/char/1.cc: | |
124 | Likewise. | |
125 | * testsuite/21_strings/basic_string_view/operations/find/char/2.cc: | |
126 | Likewise. | |
127 | * testsuite/21_strings/basic_string_view/operations/find/char/3.cc: | |
128 | Likewise. | |
129 | * testsuite/21_strings/basic_string_view/operations/find/char/4.cc: | |
130 | Likewise. | |
131 | * testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc: | |
132 | Likewise. | |
133 | * testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc: | |
134 | Likewise. | |
135 | * testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc: | |
136 | Likewise. | |
137 | * testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc: | |
138 | Likewise. | |
139 | * testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc: | |
140 | Likewise. | |
141 | * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc: | |
142 | Likewise. | |
143 | * testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc: | |
144 | Likewise. | |
145 | * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc: | |
146 | Likewise. | |
147 | * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc: | |
148 | Likewise. | |
149 | * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc: | |
150 | Likewise. | |
151 | * testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc: | |
152 | Likewise. | |
153 | * testsuite/21_strings/basic_string_view/operations/substr/char/1.cc: | |
154 | Likewise. | |
155 | * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc: | |
156 | Likewise. | |
157 | * testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise. | |
158 | * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc: | |
159 | Likewise. | |
160 | * testsuite/21_strings/basic_string_view/range_access/char/1.cc: | |
161 | Likewise. | |
162 | * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc: | |
163 | Likewise. | |
164 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc: | |
165 | Likewise. | |
166 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc: | |
167 | Likewise. | |
168 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: | |
169 | Likewise. | |
170 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: | |
171 | Likewise. | |
172 | * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: | |
173 | Likewise. | |
174 | * testsuite/21_strings/basic_string_view/requirements/typedefs.cc: | |
175 | Likewise. | |
176 | * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise. | |
177 | * testsuite/21_strings/basic_string_view/types/1.cc: Likewise. | |
178 | ||
427f68c6 JW |
179 | 2016-07-27 Jonathan Wakely <jwakely@redhat.com> |
180 | ||
181 | * testsuite/20_util/forward/1_neg.cc: Move dg-error to right line. | |
182 | ||
a837417c GC |
183 | 2016-07-25 Georeth Chow <georeth2010@gmail.com> |
184 | ||
185 | * include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify | |
186 | _S_concat enumerator. | |
187 | * testsuite/ext/rope/6.cc: New test. | |
188 | ||
19bb30c0 JW |
189 | 2016-07-25 Jonathan Wakely <jwakely@redhat.com> |
190 | ||
191 | * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use | |
192 | std::mt19937, std::thread and std::atomic to simplify test. | |
193 | * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise. | |
194 | ||
960637ac JW |
195 | 2016-07-22 Jonathan Wakely <jwakely@redhat.com> |
196 | ||
8cab3d18 JW |
197 | PR libstdc++/71964 |
198 | * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] | |
199 | (basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor. | |
200 | * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator. | |
201 | * testsuite/21_strings/basic_string/allocator/71964.cc: New test. | |
202 | * testsuite/23_containers/set/allocator/71964.cc: New test. | |
203 | ||
960637ac JW |
204 | * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use |
205 | delete[] instead of delete. | |
206 | ||
22620c14 JW |
207 | 2016-07-21 Jonathan Wakely <jwakely@redhat.com> |
208 | ||
8b649cd3 JW |
209 | * include/experimental/propagate_const (propagate_const::__t): Rename |
210 | to _M_t and remove comment. Qualify std::move and std::forward. | |
211 | * testsuite/experimental/propagate_const/cons/default.cc: Fix test. | |
212 | ||
509b778f JW |
213 | * testsuite/23_containers/vector/zero_sized_allocations.cc: |
214 | Define sized deallocation function. | |
215 | * testsuite/util/testsuite_new_operators.h: | |
216 | (operator delete(void*, const std::nothrow_t&)): Define nothrow | |
217 | deallocation function. | |
218 | ||
e93a101f JW |
219 | * testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix |
220 | reads past the end of strings. | |
221 | * testsuite/21_strings/basic_string/operations/compare/char/1.cc: | |
222 | Likewise. | |
223 | * testsuite/21_strings/char_traits/requirements/short/1.cc: Fix | |
224 | invalid array accesses. | |
225 | * testsuite/experimental/string_view/operations/compare/char/1.cc: | |
226 | Fix read past the end of string. | |
227 | * testsuite/util/testsuite_character.cc: Fix out-of-bounds write. | |
228 | ||
0a024155 JW |
229 | * testsuite/24_iterators/container_access.cc: Fix missing returns. |
230 | * testsuite/24_iterators/range_access_cpp14.cc: Likewise. | |
231 | ||
22620c14 JW |
232 | * testsuite/18_support/new_delete_placement.cc: Don't allocate (and |
233 | leak) memory for arguments to placement delete. | |
234 | * testsuite/20_util/addressof/1.cc: Don't leak memory. | |
235 | * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise. | |
236 | * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc: | |
237 | Likewise. | |
238 | ||
18407bfb JW |
239 | 2016-07-20 Jonathan Wakely <jwakely@redhat.com> |
240 | ||
09a855ae JW |
241 | * doc/xml/manual/intro.xml: Document DR 2684 status. |
242 | * doc/html/*: Regenerate. | |
243 | ||
e87b7d52 JW |
244 | * include/std/atomic (atomic_int8_t, atomic_uint8_t, atomic_int16_t) |
245 | (atomic_uint16_t, atomic_int32_t, atomic_uint32_t, atomic_int64_t) | |
246 | (atomic_uint64_t): Define (LWG 2441). | |
247 | * testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Remove empty | |
248 | lines. | |
249 | * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Test for | |
250 | the new types. | |
251 | * doc/xml/manual/intro.xml: Document DR 2441 status. | |
252 | ||
07c772ed JW |
253 | * include/std/istream (operator>>(basic_istream&&, _Tp&)): Adjust |
254 | to use perfect forwarding (LWG 2328). | |
255 | * testsuite/27_io/rvalue_streams.cc: Test perfect forwarding. | |
256 | * doc/xml/manual/intro.xml: Document DR 2328 status. | |
257 | ||
18407bfb JW |
258 | * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Use |
259 | static objects for catching nullptr as pointer to member types. | |
260 | ||
40f3e913 VV |
261 | 2016-07-18 Ville Voutilainen <ville.voutilainen@gmail.com> |
262 | ||
263 | Clean up optional's comments. | |
264 | * include/std/optional: Remove incorrect section headers | |
265 | from comments when redundant, replace bare section | |
266 | headers with more descriptive comments. | |
267 | ||
479d0ed5 JW |
268 | 2016-07-15 Jonathan Wakely <jwakely@redhat.com> |
269 | ||
4f5f9962 JW |
270 | * include/bits/algorithmfwd.h: Change C++0x to C++11 in comments. |
271 | * include/bits/move.h: Likewise. | |
272 | * include/bits/postypes.h: Likewise. | |
273 | * include/debug/bitset: Likewise. | |
274 | * include/ext/pb_ds/detail/type_utils.hpp: Likewise. | |
275 | * include/ext/string_conversions.h: Change C++0x to __cxx11 in | |
276 | comment. | |
277 | * testsuite/27_io/fpos/14320-1.cc: Change C++0x to C++11 in comment. | |
278 | * testsuite/util/thread/all.h: Likewise. | |
279 | ||
d1129d45 JW |
280 | * include/bits/stl_algo.h (for_each): Remove redundant _GLIBCXX_MOVE |
281 | and adjust comment. | |
282 | ||
479d0ed5 JW |
283 | PR c++/58796 |
284 | * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Make | |
285 | nullptr match handlers of pointer type. | |
286 | ||
4db1cb44 ESR |
287 | 2016-07-15 Edward Smith-Rowland <3dw4rd@verizon.net> |
288 | ||
289 | Implement C++17 P0025 clamp. | |
290 | * include/bits/algorithmfwd.h: Declare clamp overloads. | |
291 | * include/bits/stl_algo.h: Implement clamp. Feature __cpp_lib_clamp. | |
292 | * testsuite/25_algorithms/clamp/1.cc: New test. | |
293 | * testsuite/25_algorithms/clamp/2.cc: New test. | |
294 | * testsuite/25_algorithms/clamp/constexpr.cc: New test. | |
295 | * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/ | |
296 | 1.cc: New test. | |
297 | * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/ | |
298 | pod.cc: New test. | |
299 | ||
1ec0f763 VV |
300 | 2016-07-14 Ville Voutilainen <ville.voutilainen@gmail.com> |
301 | ||
302 | Fix the constraints for any's assignment operator template to properly | |
303 | reject assignment from a non-copyable lvalue. | |
304 | * include/std/any (operator=(_ValueType&&)): Constrain the decayed | |
305 | type for is_copy_constructible, | |
306 | * testsuite/20_util/any/requirements.cc: Add a test for | |
307 | non-copyable lvalues. | |
308 | ||
0a2bf188 JW |
309 | 2016-07-14 Jonathan Wakely <jwakely@redhat.com> |
310 | ||
ea5ec6b7 JW |
311 | * include/experimental/functional: Include <parallel/algorithm> in |
312 | Parallel Mode. | |
313 | ||
47d5cb3c JW |
314 | * testsuite/experimental/functional/searchers.cc: Include <algorithm> |
315 | for std::search. | |
316 | ||
0a2bf188 JW |
317 | PR libstdc++/70716 |
318 | * include/bits/forward_list.h (forward_list): Update doxygen comments | |
319 | to reflect allocator propagation semantics. Remove ambiguous | |
320 | statements about data being lost. | |
321 | * include/bits/stl_deque.h (deque): Likewise. | |
322 | * include/bits/stl_list.h (list): Likewise. | |
323 | * include/bits/stl_map.h (map): Likewise. | |
324 | * include/bits/stl_multimap.h (multimap): Likewise. | |
325 | * include/bits/stl_multiset.h (multiset): Likewise. | |
326 | * include/bits/stl_set.h (set): Likewise. | |
327 | * include/bits/stl_vector.h (vector): Likewise. | |
328 | * include/bits/unordered_map.h (unordered_map, unordered_multimap): | |
329 | Likewise. | |
330 | * include/bits/unordered_set.h (unordered_set, unordered_multiset): | |
331 | Likewise. | |
332 | ||
25a69162 VV |
333 | 2016-07-14 Ville Voutilainen <ville.voutilainen@gmail.com> |
334 | ||
335 | Implement P0032R3, Homogeneous interface for variant, any and optional, | |
336 | for the parts concerning any and optional. | |
337 | * include/std/any (_Storage()): Make constexpr and have it | |
338 | initialize _M_ptr. | |
339 | (any()): Make constexpr. | |
340 | (any(const any&)): Adjust. | |
341 | (any(any&&)): Likewise. | |
342 | (__any_constructible_t): New. | |
343 | (any(_ValueType&&)): Constrain. | |
344 | (any(in_place_type_t<_Tp>, _Args&&...)): New. | |
345 | (any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)): | |
346 | Likewise. | |
347 | (~any()): Adjust. | |
348 | (operator=(const any&)): Likewise. | |
349 | (operator=(any&&)): Likewise. | |
350 | (operator=(_ValueType&&)): Constrain. | |
351 | (emplace(_Args&&...)): New. | |
352 | (emplace(initializer_list<_Up>, _Args&&...)): Likewise. | |
353 | (clear()): Remove. | |
354 | (reset()): New. | |
355 | (swap(any&)): Adjust. | |
356 | (empty()): Remove. | |
357 | (has_value()): New. | |
358 | (type()): Adjust. | |
359 | (_Manager_internal::_S_create(_Storage&, _Args&&...)): New. | |
360 | (_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise. | |
361 | (make_any(_Args&&...)): Likewise. | |
362 | (make_any(initializer_list<_Up>, _Args&&...)): Likewise. | |
363 | * include/std/optional (in_place_t, in_place): Remove. | |
364 | (bad_optional_access): Add a comment referring to LEWG 72. | |
365 | (emplace(_Args&&...)): Constrain. | |
366 | (has_value()): New. | |
367 | (reset()): Likewise. | |
368 | (make_optional(_Args&&...)): Likewise. | |
369 | (make_optional(initializer_list<_Up>, _Args&&...)): Likewise. | |
370 | * include/std/utility (in_place_tag): New. | |
371 | (__in_place, __in_place_type, __in_place_index): Likewise. | |
372 | (in_place_t, in_place_type_t, in_place_index_t): Likewise. | |
373 | (in_place(__in_place*)): Likewise. | |
374 | (in_place(__in_place_type<_Tp>*)): Likewise. | |
375 | (in_place(__in_place_index<_Idx>*)): Likewise. | |
376 | * testsuite/20_util/any/assign/1.cc: Adjust. | |
377 | * testsuite/20_util/any/assign/emplace.cc: New. | |
378 | * testsuite/20_util/any/assign/self.cc: Adjust. | |
379 | * testsuite/20_util/any/cons/1.cc: Likewise. | |
380 | * testsuite/20_util/any/cons/in_place.cc: New. | |
381 | * testsuite/20_util/any/make_any.cc: Likewise. | |
382 | * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust. | |
383 | * testsuite/20_util/any/misc/swap.cc: Likewise. | |
384 | * testsuite/20_util/any/modifiers/1.cc: Likewise. | |
385 | * testsuite/20_util/any/requirements.cc: New. | |
386 | * testsuite/20_util/in_place/requirements.cc: Likewise. | |
387 | * testsuite/20_util/optional/constexpr/in_place.cc: Adjust. | |
388 | * testsuite/20_util/optional/in_place.cc: Likewise. | |
389 | * testsuite/20_util/optional/make_optional.cc: Add tests for | |
390 | the new overloads of make_optional. | |
391 | ||
c0d31471 VV |
392 | 2016-07-13 Ville Voutilainen <ville.voutilainen@gmail.com> |
393 | ||
394 | Implement P0307R2, Making Optional Greater Equal Again. | |
395 | * include/experimental/optional (_Has_addressof): Fix the comment. | |
396 | * include/std/optional (_Has_addressof): Likewise. | |
397 | (operator=(_Up&&)): Constrain. | |
398 | (operator=(const optional<_Up>&)): Likewise. | |
399 | (operator=(optional<_Up>&&)): Likewise. | |
400 | (__optional_relop_t): New. | |
401 | (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain. | |
402 | (operator!=(const optional<_Tp>&, const optional<_Tp>&)): | |
403 | Constrain and make transparent. | |
404 | (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain. | |
405 | (operator>(const optional<_Tp>&, const optional<_Tp>&)): | |
406 | Constrain and make transparent. | |
407 | (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise. | |
408 | (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise. | |
409 | (operator==(const optional<_Tp>&, const _Tp&): Constrain. | |
410 | (operator==(const _Tp&, const optional<_Tp>&)): Likewise. | |
411 | (operator!=(const optional<_Tp>&, _Tp const&)): | |
412 | Constrain and make transparent. | |
413 | (operator!=(const _Tp&, const optional<_Tp>&)): Likewise. | |
414 | (operator<(const optional<_Tp>&, const _Tp&)): Constrain. | |
415 | (operator<(const _Tp&, const optional<_Tp>&)): Likewise. | |
416 | (operator>(const optional<_Tp>&, const _Tp&)): | |
417 | Constrain and make transparent. | |
418 | (operator>(const _Tp&, const optional<_Tp>&)): Likewise. | |
419 | (operator<=(const optional<_Tp>&, const _Tp&)): Likewise. | |
420 | (operator<=(const _Tp&, const optional<_Tp>&)): Likewise. | |
421 | (operator>=(const optional<_Tp>&, const _Tp&)): Likewise. | |
422 | (operator>=(const _Tp&, const optional<_Tp>&)): Likewise. | |
423 | * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust. | |
424 | * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise. | |
425 | * testsuite/20_util/optional/relops/1.cc: Likewise. | |
426 | * testsuite/20_util/optional/relops/2.cc: Likewise. | |
427 | * testsuite/20_util/optional/relops/3.cc: Likewise. | |
428 | * testsuite/20_util/optional/relops/4.cc: Likewise. | |
429 | * testsuite/20_util/optional/requirements.cc: Add tests to verify | |
430 | that optional's relops are transparent and don't synthesize | |
431 | operators. Also test that assignment sfinaes. | |
432 | ||
260d92cd JW |
433 | 2016-07-13 Jonathan Wakely <jwakely@redhat.com> |
434 | ||
e383deac JW |
435 | PR libstdc++/71856 |
436 | * include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty. | |
437 | * include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS): | |
438 | Rename to _GLIBCXX_PARALLEL_ASSERTIONS and make default value depend | |
439 | on _GLIBCXX_ASSERTIONS. | |
440 | * include/parallel/balanced_quicksort.h: Rename _GLIBCXX_ASSERTIONS. | |
441 | Include <unistd.h> for sleep. | |
442 | * include/parallel/losertree.h: Rename _GLIBCXX_ASSERTIONS. | |
443 | * include/parallel/merge.h: Likewise. | |
444 | * include/parallel/multiway_merge.h: Likewise. | |
445 | * include/parallel/partition.h: Likewise. | |
446 | * include/parallel/queue.h: Likewise. | |
447 | * include/parallel/sort.h: Likewise. | |
448 | * testsuite/25_algorithms/headers/algorithm/ | |
449 | parallel_algorithm_assert.cc: New. | |
450 | ||
17f8dc93 JW |
451 | * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] |
452 | (replace(__const_iterator, __const_iterator, initializer_list<C>)): | |
453 | Forward to different overload. | |
454 | ||
260d92cd JW |
455 | * include/bits/allocated_ptr.h (__allocated_ptr::_S_raw_ptr): Make |
456 | static. | |
457 | ||
2d60da10 JW |
458 | 2016-07-13 Jonathan Wakely <jwakely@redhat.com> |
459 | ||
460 | Revert "Add non-const overload of std::string::data()". | |
461 | ||
05505e9d VV |
462 | 2016-07-13 Ville Voutilainen <ville.voutilainen@gmail.com> |
463 | ||
86c0ec1d VV |
464 | Implement P0307R2, Making Optional Greater Equal Again. |
465 | * include/experimental/optional (_Has_addressof): Fix the comment. | |
466 | * include/std/optional (_Has_addressof): Likewise. | |
467 | (operator=(_Up&&)): Constrain. | |
468 | (operator=(const optional<_Up>&)): Likewise. | |
469 | (operator=(optional<_Up>&&)): Likewise. | |
470 | (__optional_relop_t): New. | |
471 | (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain. | |
472 | (operator!=(const optional<_Tp>&, const optional<_Tp>&)): | |
473 | Constrain and make transparent. | |
474 | (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain. | |
475 | (operator>(const optional<_Tp>&, const optional<_Tp>&)): | |
476 | Constrain and make transparent. | |
477 | (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise. | |
478 | (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise. | |
479 | (operator==(const optional<_Tp>&, const _Tp&): Constrain. | |
480 | (operator==(const _Tp&, const optional<_Tp>&)): Likewise. | |
481 | (operator!=(const optional<_Tp>&, _Tp const&)): | |
482 | Constrain and make transparent. | |
483 | (operator!=(const _Tp&, const optional<_Tp>&)): Likewise. | |
484 | (operator<(const optional<_Tp>&, const _Tp&)): Constrain. | |
485 | (operator<(const _Tp&, const optional<_Tp>&)): Likewise. | |
486 | (operator>(const optional<_Tp>&, const _Tp&)): | |
487 | Constrain and make transparent. | |
488 | (operator>(const _Tp&, const optional<_Tp>&)): Likewise. | |
489 | (operator<=(const optional<_Tp>&, const _Tp&)): Likewise. | |
490 | (operator<=(const _Tp&, const optional<_Tp>&)): Likewise. | |
491 | (operator>=(const optional<_Tp>&, const _Tp&)): Likewise. | |
492 | (operator>=(const _Tp&, const optional<_Tp>&)): Likewise. | |
493 | * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust. | |
494 | * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise. | |
495 | * testsuite/20_util/optional/relops/1.cc: Likewise. | |
496 | * testsuite/20_util/optional/relops/2.cc: Likewise. | |
497 | * testsuite/20_util/optional/relops/3.cc: Likewise. | |
498 | * testsuite/20_util/optional/relops/4.cc: Likewise. | |
499 | * testsuite/20_util/optional/requirements.cc: Add tests to verify | |
500 | that optional's relops are transparent and don't synthesize | |
501 | operators. Also test that assignment sfinaes. | |
502 | ||
ceea48fc JW |
503 | 2016-07-13 Jonathan Wakely <jwakely@redhat.com> |
504 | ||
505 | * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (_M_c_str): | |
506 | New function. | |
507 | (_M_disjunct, basic_string(const basic_string&, size_t)): Use data() | |
508 | instead of _M_data(). | |
509 | (basic_string(const basic_string&, size_t, size_t, const _Alloc&)): | |
510 | Likewise. | |
511 | (append(const basic_string&)): Likewise. | |
512 | (append(const basic_string&, size_type, size_type)): Likewise. | |
513 | (assign(const basic_string&, size_type, size_type)): Likewise. | |
514 | (insert(size_type, const basic_string&)): Likewise. | |
515 | (insert(size_type, const basic_string&, size_type, size_type)): | |
516 | Likewise. | |
517 | (replace(size_type, size_type, const basic_string&, size_type, | |
518 | size_type)): Likewise. | |
519 | (replace(__const_iterator, __const_iterator, const basic_string&)): | |
520 | Likewise. | |
521 | (c_str(), data()): Use c_str() instead of _M_data(). | |
522 | (data()): Add non-const overload as per LWG 2391 and P0272R1. | |
523 | (compare(const basic_string&)): Use data() instead of _M_data(). | |
524 | [!_GLIBCXX_USE_CXX11_ABI] (data()): Add non-const overload. | |
525 | * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI] (_M_mutate): | |
526 | Pass raw pointers to _S_copy. | |
527 | (_M_erase, _M_replace_aux): Pass raw pointers to _S_move and | |
528 | _S_assign. | |
529 | (find(const _CharT*, size_type, size_type)): Use data instead of | |
530 | _M_data(). | |
531 | * testsuite/21_strings/basic_string/allocator/char/ext_ptr.cc: New. | |
532 | * testsuite/21_strings/basic_string/operations/data/char/2.cc: New. | |
533 | * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New. | |
534 | ||
17b31c05 JW |
535 | 2016-07-12 Jonathan Wakely <jwakely@redhat.com> |
536 | ||
7cbadfdc JW |
537 | * libsupc++/new: Remove nothrow sized deletes (LWG 2458). |
538 | * doc/xml/manual/intro.xml: Document DR 2458 status. | |
539 | * doc/html*: Regenerate. | |
540 | ||
1b24fb4c JW |
541 | * testsuite/20_util/pair/astuple/astuple.cc: Only include <utility>. |
542 | * testsuite/23_containers/array/tuple_interface/tuple_element.cc: | |
543 | Only include <array>. | |
544 | * testsuite/23_containers/array/tuple_interface/tuple_size.cc: | |
545 | Likewise. | |
1b1c16e0 | 546 | * doc/xml/manual/intro.xml: Document LWG 2212 support. |
1b24fb4c JW |
547 | * doc/html*: Regenerate. |
548 | ||
17b31c05 JW |
549 | * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc: |
550 | Add testcase from LWG 2164. | |
551 | ||
76225d2c FD |
552 | 2016-07-11 François Dumont <fdumont@gcc.gnu.org> |
553 | ||
554 | * include/bits/stl_vector.h (push_back(const value_type&)): Forward | |
555 | to _M_realloc_insert. | |
556 | (insert(const_iterator, value_type&&)): Forward to _M_insert_rval. | |
557 | (_M_realloc_insert): Declare new function. | |
558 | (_M_emplace_back_aux): Remove definition. | |
559 | * include/bits/vector.tcc (emplace_back(_Args...)): | |
560 | Use _M_realloc_insert. | |
561 | (insert(const_iterator, const value_type&)): Likewise. | |
562 | (_M_insert_rval, _M_emplace_aux): Likewise. | |
563 | (_M_emplace_back_aux): Remove declaration. | |
564 | (_M_realloc_insert): Define. | |
565 | * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: | |
566 | Adjust expected results for emplacing an lvalue with reallocation. | |
567 | ||
435e56fb VV |
568 | 2016-07-10 Ville Voutilainen <ville.voutilainen@gmail.com> |
569 | ||
570 | Implement std::optional. | |
571 | * include/Makefile.am: Add optional to exported headers. | |
572 | * include/Makefile.in: Likewise. | |
573 | * include/std/optional: New. | |
574 | * testsuite/20_util/optional/typedefs.cc: Likewise. | |
575 | * testsuite/20_util/optional/relops/2.cc: Likewise. | |
576 | * testsuite/20_util/optional/relops/3.cc: Likewise. | |
577 | * testsuite/20_util/optional/relops/4.cc: Likewise. | |
578 | * testsuite/20_util/optional/relops/5.cc: Likewise. | |
579 | * testsuite/20_util/optional/relops/1.cc: Likewise. | |
580 | * testsuite/20_util/optional/relops/6.cc: Likewise. | |
581 | * testsuite/20_util/optional/nullopt.cc: Likewise. | |
582 | * testsuite/20_util/optional/in_place.cc: Likewise. | |
583 | * testsuite/20_util/optional/make_optional.cc: Likewise. | |
584 | * testsuite/20_util/optional/assignment/2.cc: Likewise. | |
585 | * testsuite/20_util/optional/assignment/3.cc: Likewise. | |
586 | * testsuite/20_util/optional/assignment/4.cc: Likewise. | |
587 | * testsuite/20_util/optional/assignment/5.cc: Likewise. | |
588 | * testsuite/20_util/optional/assignment/1.cc: Likewise. | |
589 | * testsuite/20_util/optional/assignment/6.cc: Likewise. | |
590 | * testsuite/20_util/optional/cons/value_neg.cc: Likewise. | |
591 | * testsuite/20_util/optional/cons/default.cc: Likewise. | |
592 | * testsuite/20_util/optional/cons/move.cc: Likewise. | |
593 | * testsuite/20_util/optional/cons/value.cc: Likewise. | |
594 | * testsuite/20_util/optional/cons/copy.cc: Likewise. | |
595 | * testsuite/20_util/optional/requirements.cc: Likewise. | |
596 | * testsuite/20_util/optional/observers/2.cc: Likewise. | |
597 | * testsuite/20_util/optional/observers/3.cc: Likewise. | |
598 | * testsuite/20_util/optional/observers/4.cc: Likewise. | |
599 | * testsuite/20_util/optional/observers/5.cc: Likewise. | |
600 | * testsuite/20_util/optional/observers/1.cc: Likewise. | |
601 | * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise. | |
602 | * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise. | |
603 | * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise. | |
604 | * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise. | |
605 | * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise. | |
606 | * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise. | |
607 | * testsuite/20_util/optional/constexpr/nullopt.cc: Likewise. | |
608 | * testsuite/20_util/optional/constexpr/in_place.cc: Likewise. | |
609 | * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise. | |
610 | * testsuite/20_util/optional/constexpr/cons/default.cc: Likewise. | |
611 | * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise. | |
612 | * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise. | |
613 | * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise. | |
614 | * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise. | |
615 | * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise. | |
616 | * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise. | |
617 | * testsuite/20_util/optional/swap/1.cc: Likewise. | |
618 | ||
d81102f4 JW |
619 | 2016-07-08 Jonathan Wakely <jwakely@redhat.com> |
620 | ||
621 | * testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New. | |
622 | ||
9fc0faf0 JW |
623 | 2016-07-07 Jonathan Wakely <jwakely@redhat.com> |
624 | ||
625 | * doc/xml/manual/status_cxx2014.xml: Update LFTS status table. | |
626 | * doc/html/*: Regenerate. | |
627 | ||
52e86221 VV |
628 | 2016-07-07 Ville Voutilainen <ville.voutilainen@gmail.com> |
629 | ||
630 | Implement std::any. | |
631 | * include/Makefile.am: Add any and c++17_warning.h to exported headers. | |
632 | * include/Makefile.in: Likewise. | |
633 | * include/std/any: New. | |
634 | * testsuite/20_util/any/assign/1.cc: Likewise. | |
635 | * testsuite/20_util/any/assign/2.cc: Likewise. | |
636 | * testsuite/20_util/any/assign/self.cc: Likewise. | |
637 | * testsuite/20_util/any/cons/1.cc: Likewise. | |
638 | * testsuite/20_util/any/cons/2.cc: Likewise. | |
639 | * testsuite/20_util/any/cons/aligned.cc: Likewise. | |
640 | * testsuite/20_util/any/cons/nontrivial.cc: Likewise. | |
641 | * testsuite/20_util/any/misc/any_cast.cc: Likewise. | |
642 | * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise. | |
643 | * testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise. | |
644 | * testsuite/20_util/any/misc/swap.cc: Likewise. | |
645 | * testsuite/20_util/any/modifiers/1.cc: Likewise. | |
646 | * testsuite/20_util/any/observers/type.cc: Likewise. | |
647 | * testsuite/20_util/any/typedefs.cc: Likewise. | |
648 | ||
3042e708 VV |
649 | 2016-07-06 Ville Voutilainen <ville.voutilainen@gmail.com> |
650 | ||
651 | Add a new header for diagnosing the use of C++17 facilities | |
652 | in pre-C++17 modes. | |
653 | * include/bits/c++17_warning.h: New. | |
654 | ||
6ffe8548 VV |
655 | 2016-07-06 Ville Voutilainen <ville.voutilainen@gmail.com> |
656 | ||
657 | Implement LWG 2451, optional<T> should 'forward' T's | |
658 | implicit conversions. | |
659 | * include/experimental/optional (__is_optional_impl, __is_optional): | |
660 | New. | |
661 | (optional()): Make constexpr and default. | |
662 | (optional(_Up&&), optional(const optional<_Up>&), | |
663 | optional(optional<_Up>&& __t): New. | |
664 | (operator=(_Up&&)): Constrain. | |
665 | (operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New. | |
666 | * testsuite/experimental/optional/cons/value.cc: | |
667 | Add tests for the functionality added by LWG 2451. | |
668 | * testsuite/experimental/optional/cons/value_neg.cc: New. | |
669 | ||
7d4f48b5 VV |
670 | 2016-07-05 Ville Voutilainen <ville.voutilainen@gmail.com> |
671 | ||
672 | Implement LWG 2509, | |
673 | any_cast doesn't work with rvalue reference targets and cannot | |
674 | move with a value target. | |
675 | * include/experimental/any (any(_ValueType&&)): Constrain and | |
676 | add an overload that doesn't forward. | |
677 | (any_cast(any&&)): Constrain and add an overload that moves. | |
678 | * testsuite/experimental/any/misc/any_cast.cc: Add tests for | |
679 | the functionality added by LWG 2509. | |
680 | ||
097e8994 FD |
681 | 2016-07-04 François Dumont <fdumont@gcc.gnu.org> |
682 | ||
683 | * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc: | |
684 | New test. | |
685 | * testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New | |
686 | test. | |
687 | ||
9958c7eb JW |
688 | 2016-07-04 Jonathan Wakely <jwakely@redhat.com> |
689 | ||
690 | * include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)): | |
691 | Define inline. Forward to _M_emplace_aux. | |
692 | (insert(const_iterator, value_type&&)): Forward to _M_insert_rval. | |
693 | (_M_insert_rval, _M_emplace_aux): Declare new functions. | |
694 | (_Temporary_value): New RAII type using allocator to construct/destroy. | |
695 | (_S_insert_aux_assign): Remove. | |
696 | (_M_insert_aux): Make non-variadic. | |
697 | * include/bits/vector.tcc (insert(const_iterator, const value_type&)): | |
698 | Use _Temporary_value. | |
699 | (emplace(const_iterator, _Args&&...)): Remove definition. | |
700 | (_M_insert_rval, _M_emplace_aux): Define. | |
701 | (_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign. | |
702 | (_M_fill_insert): Use _Temporary_value. | |
703 | * testsuite/23_containers/vector/allocator/construction.cc: New test. | |
704 | * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: | |
705 | Adjust expected results for emplacing an lvalue with reallocation. | |
706 | * testsuite/23_containers/vector/check_construct_destroy.cc: Adjust | |
707 | expected results to account for construction/destruction of temporary | |
708 | using allocator. | |
709 | * testsuite/backward/hash_set/check_construct_destroy.cc: Likewise. | |
710 | ||
e12880f9 VV |
711 | 2016-07-04 Ville Voutilainen <ville.voutilainen@gmail.com> |
712 | ||
713 | PR libstdc++/71313 | |
714 | * src/filesystem/ops.cc (remove_all(const path&, error_code&)): | |
715 | Call remove_all for children of a directory. | |
716 | * testsuite/experimental/filesystem/operations/create_directories.cc: | |
717 | Adjust. | |
718 | ||
6c539f2e FD |
719 | 2016-07-02 François Dumont <fdumont@gcc.gnu.org> |
720 | ||
721 | * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust | |
722 | dg-error line numbers. | |
723 | * testsuite/23_containers/array/tuple_interface/ | |
724 | tuple_element_debug_neg.cc: Likewise. | |
725 | * testsuite/25_algorithms/lexicographical_compare/debug/ | |
726 | irreflexive_neg.cc: Remove. | |
727 | ||
72fb6bae TP |
728 | 2016-06-30 Thomas Preud'homme <thomas.preudhomme@arm.com> |
729 | ||
730 | * testsuite/29_atomics/atomic/65913.cc: Require atomic-builtins rather | |
731 | than specific target. | |
732 | ||
dc448fa0 FD |
733 | 2016-06-27 François Dumont <fdumont@gcc.gnu.org> |
734 | ||
735 | PR libstdc++/71640 | |
736 | * include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert | |
737 | friend declaration. | |
738 | ||
e615c24c FD |
739 | 2016-06-23 François Dumont <fdumont@gcc.gnu.org> |
740 | ||
741 | * include/debug/array (array<>::swap): Fix noexcept qualificaton for | |
742 | zero-size array. | |
743 | ||
0609abda TS |
744 | 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
745 | ||
746 | * configure.host: Remove mep-* support. | |
747 | ||
8466af06 TS |
748 | 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
749 | ||
750 | * configure: Regenerate. | |
751 | * configure.host: Remove support for knetbsd. | |
752 | * crossconfig.m4: Likewise. | |
753 | ||
29dbb034 FD |
754 | 2016-06-20 François Dumont <fdumont@gcc.gnu.org> |
755 | ||
756 | PR libstdc++/71181 | |
757 | * include/tr1/hashtable_policy.h | |
758 | (_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator | |
759 | dereferenceable to avoid check on lower_bound result. | |
760 | (_Prime_rehash_policy::_M_bkt_for_elements): Call latter. | |
761 | (_Prime_rehash_policy::_M_need_rehash): Likewise. | |
762 | * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt): | |
763 | Always return a value greater than input value. Set _M_next_resize to | |
764 | max value when reaching highest prime number. | |
765 | * src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel | |
766 | being now useless. | |
767 | * testsuite/23_containers/unordered_set/hash_policy/71181.cc: New. | |
768 | * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc | |
769 | (test02): New. | |
770 | * testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New. | |
771 | * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: | |
772 | Fix indentation. | |
773 | ||
3ebacabd JW |
774 | 2016-06-17 Jonathan Wakely <jwakely@redhat.com> |
775 | ||
776 | PR libstdc++/71545 | |
777 | * include/bits/stl_algobase.h (lower_bound, lexicographical_compare): | |
778 | Remove irreflexive checks. | |
779 | * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range, | |
780 | binary_search): Likewise. | |
781 | * testsuite/25_algorithms/equal_range/partitioned.cc: New test. | |
782 | * testsuite/25_algorithms/lexicographical_compare/71545.cc: New test. | |
783 | * testsuite/25_algorithms/lower_bound/partitioned.cc: New test. | |
784 | * testsuite/25_algorithms/upper_bound/partitioned.cc: New test. | |
785 | * testsuite/util/testsuite_iterators.h (__gnu_test::test_container): | |
786 | Add constructor from array. | |
787 | ||
bd2ee798 FD |
788 | 2016-06-16 François Dumont <fdumont@gcc.gnu.org> |
789 | ||
790 | * include/debug/debug.h | |
791 | (__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty) | |
792 | (__glibcxx_requires_subscript): Move... | |
793 | * include/debug/assertions.h: ...here and add __builtin_expect. | |
794 | (_GLIBCXX_DEBUG_ONLY): Remove ; value. | |
795 | * include/bits/stl_deque.h | |
796 | (std::deque<>::operator[]): Add __glibcxx_requires_subscript check. | |
797 | (std::deque<>::front()): Add __glibcxx_requires_nonempty check. | |
798 | (std::deque<>::back()): Likewise. | |
799 | (std::deque<>::pop_front()): Likewise. | |
800 | (std::deque<>::pop_back()): Likewise. | |
801 | (std::deque<>::swap(deque&)): Add allocator check. | |
802 | * include/bits/stl_vector.h | |
803 | (std::vector<>::operator[]): Add __glibcxx_requires_subscript check. | |
804 | (std::vector<>::front()): Add __glibcxx_requires_nonempty check. | |
805 | (std::vector<>::back()): Likewise. | |
806 | (std::vector<>::pop_back()): Likewise. | |
807 | (std::vector<>::swap(vector&)): Add allocator check. | |
808 | ||
6b9539e2 DK |
809 | 2016-06-16 Daniel Kruegler <daniel.kruegler@gmail.com> |
810 | ||
811 | Provide swappable traits (p0185r1) | |
812 | * include/std/type_traits (is_swappable, is_nothrow_swappable, | |
813 | is_swappable_with, is_nothrow_swappable_with, is_swappable_v, | |
814 | is_nothrow_swappable_v, is_swappable_with_v, | |
815 | is_nothrow_swappable_with_v): New. | |
816 | * include/bits/stl_pair.h: Use it as per p0185r1. | |
817 | * include/bits/stl_queue.h: Likewise. | |
818 | * include/bits/stl_stack.h: Likewise. | |
819 | * include/bits/unique_ptr.h: Likewise. | |
820 | * include/std/tuple: Likewise. | |
821 | * include/std/array: Likewise. Fix zero-size member swap. | |
822 | * include/bits/hashtable.h: Use __and_. | |
823 | * testsuite/20_util/is_nothrow_swappable/requirements/ | |
824 | explicit_instantiation.cc: Change test options to std=gnu++17. | |
825 | * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc: | |
826 | Likewise. | |
827 | * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise. | |
828 | * testsuite/20_util/is_swappable/requirements/ | |
829 | explicit_instantiation.cc: Likewise. | |
830 | * testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise. | |
831 | * testsuite/20_util/is_swappable/value.cc: Likewise. | |
832 | * testsuite/20_util/is_nothrow_swappable/requirements/ | |
833 | explicit_instantiation_ext.cc: New. | |
834 | * testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc: | |
835 | New. | |
836 | * testsuite/20_util/is_nothrow_swappable/value.h: New. | |
837 | * testsuite/20_util/is_nothrow_swappable/value_ext.cc: New. | |
838 | * testsuite/20_util/is_nothrow_swappable_with/requirements/ | |
839 | explicit_instantiation.cc: New. | |
840 | * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc: | |
841 | New. | |
842 | * testsuite/20_util/is_nothrow_swappable_with/value.cc: New. | |
843 | * testsuite/20_util/is_swappable/requirements/ | |
844 | explicit_instantiation_ext.cc: New. | |
845 | * testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New. | |
846 | * testsuite/20_util/is_swappable/value.h: New. | |
847 | * testsuite/20_util/is_swappable/value_ext.cc: New. | |
848 | * testsuite/20_util/is_swappable_with/requirements/ | |
849 | explicit_instantiation.cc: New. | |
850 | * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New. | |
851 | * testsuite/20_util/is_swappable_with/value.cc: New. | |
852 | * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust | |
853 | dg-error line numbers. | |
854 | * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: | |
855 | Likewise. | |
856 | ||
0ae207e9 JW |
857 | 2016-06-16 Jonathan Wakely <jwakely@redhat.com> |
858 | ||
33ac58d5 JW |
859 | * include/std/array: Remove trailing whitespace. |
860 | * include/std/atomic: Likewise. | |
861 | * include/std/bitset: Likewise. | |
862 | * include/std/chrono: Likewise. | |
863 | * include/std/complex: Likewise. | |
864 | * include/std/condition_variable: Likewise. | |
865 | * include/std/fstream: Likewise. | |
866 | * include/std/functional: Likewise. | |
867 | * include/std/future: Likewise. | |
868 | * include/std/iomanip: Likewise. | |
869 | * include/std/iosfwd: Likewise. | |
870 | * include/std/istream: Likewise. | |
871 | * include/std/limits: Likewise. | |
872 | * include/std/ratio: Likewise. | |
873 | * include/std/scoped_allocator: Likewise. | |
874 | * include/std/sstream: Likewise. | |
875 | * include/std/stdexcept: Likewise. | |
876 | * include/std/string: Likewise. | |
877 | * include/std/system_error: Likewise. | |
878 | * include/std/thread: Likewise. | |
879 | * include/std/tuple: Likewise. | |
880 | * include/std/type_traits: Likewise. | |
881 | * include/std/utility: Likewise. | |
882 | * include/std/valarray: Likewise. | |
883 | * include/std/vector: Likewise. | |
884 | ||
0ae207e9 JW |
885 | * include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define |
886 | new overloaded functions. | |
887 | * include/bits/vector.tcc (vector::_M_insert_aux): Use new functions | |
888 | to avoid creating a redundant temporary. | |
889 | * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New | |
890 | test. | |
891 | ||
d7e16fc5 FD |
892 | 2016-06-15 François Dumont <fdumont@gcc.gnu.org> |
893 | ||
894 | * include/bits/stl_deque.h | |
895 | (std::deque<>::operator=): Call _M_assign_aux. | |
896 | (std::deque<>::assign(initializer_list<>)): Likewise. | |
897 | (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert. | |
898 | (std::deque<>::insert(const_iterator, initializer_list<>)): | |
899 | Call _M_range_insert_aux. | |
900 | (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag): | |
901 | Likewise. | |
902 | (std::deque<>::_M_fill_assign): Call _M_fill_insert. | |
903 | (std::deque<>::_M_move_assign2): Call _M_assign_aux. | |
904 | * include/bits/deque.tcc | |
905 | (std::deque<>::operator=): Call _M_range_insert_aux. | |
906 | (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)): | |
907 | Likewise. | |
908 | * include/bits/stl_vector.h | |
909 | (std::vector<>::operator=): Call _M_assign_aux. | |
910 | (std::vector<>::assign(initializer_list<>)): Likewise. | |
911 | (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert. | |
912 | (std::vector<>::insert(const_iterator, initializer_list<>)): | |
913 | Call _M_range_insert. | |
914 | * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise. | |
915 | ||
373c0095 FD |
916 | 2016-06-07 François Dumont <fdumont@gcc.gnu.org> |
917 | ||
918 | * include/std/tuple (_Head_base<>): Default specialization condition at | |
919 | type declaration. | |
920 | ||
dbc6221f VV |
921 | 2016-06-06 Ville Voutilainen <ville.voutilainen@gmail.com> |
922 | ||
923 | Support allocators in tuples of zero size. | |
924 | * include/std/tuple (tuple<>::tuple(), | |
925 | tuple<>::tuple(allocator_arg_t, const _Alloc&), | |
926 | tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New. | |
927 | * testsuite/20_util/tuple/cons/allocators.cc: Adjust. | |
928 | ||
94229fb6 JW |
929 | 2016-06-06 Jonathan Wakely <jwakely@redhat.com> |
930 | ||
931 | PR libstdc++/71320 | |
932 | * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)): | |
933 | Add or remove permissions according to perms argument. | |
934 | * testsuite/experimental/filesystem/operations/permissions.cc: New | |
935 | test. | |
936 | ||
7a667453 VV |
937 | 2016-06-05 Ville Voutilainen <ville.voutilainen@gmail.com> |
938 | ||
939 | Protect allocator-overloads of tuple-from-tuple constructors | |
940 | from cases that would create dangling references. | |
941 | * include/std/tuple (tuple(allocator_arg_t, const _Alloc&, | |
942 | const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&, | |
943 | tuple<_UElements...>&&)): Add a check for _NonNestedTuple. | |
944 | * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust. | |
945 | ||
4acc3634 GP |
946 | 2016-05-29 Gerald Pfeifer <gerald@pfeifer.com> |
947 | ||
948 | * doc/xml/manual/backwards_compatibility.xml: Adjust | |
949 | lists.debian.org link to https. | |
950 | * doc/html/manual/backwards.html: Regenerate. | |
951 | ||
9020909e JW |
952 | 2016-05-27 Jonathan Wakely <jwakely@redhat.com> |
953 | ||
954 | * doc/xml/manual/abi.xml: Adjust URL to use https. | |
955 | * doc/html/manual/*: Regenerate. | |
956 | ||
b7021006 VV |
957 | 2016-05-27 Ville Voutilainen <ville.voutilainen@gmail.com> |
958 | ||
959 | PR libstdc++/66338 | |
960 | * include/std/tuple (_TMC): Add a check for _NotSameTuple. | |
961 | * include/std/tuple (tuple(_UElements&&...)): Remove the separate | |
962 | check for _NotSameTuple. | |
963 | * include/std/tuple (_TMCT): New. | |
964 | * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it. | |
965 | * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise. | |
966 | * include/std/tuple (tuple(allocator_arg_t, const _Alloc&, | |
967 | const tuple<_UElements...>&)): Likewise. | |
968 | * include/std/tuple (tuple(allocator_arg_t, const _Alloc&, | |
969 | tuple<_UElements...>&&)): Likewise. | |
970 | * testsuite/20_util/tuple/cons/66338.cc: New. | |
971 | ||
834f4c43 JW |
972 | 2016-05-25 Jonathan Wakely <jwakely@redhat.com> |
973 | ||
c42d2288 JW |
974 | * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile. |
975 | * configure: Regenerate. | |
976 | * config.h.in: Regenerate. | |
977 | ||
834f4c43 JW |
978 | * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it. |
979 | * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt): | |
980 | Remove const qualification on function. Replace | |
981 | _GLIBCXX14_USE_CONSTEXPR on automatic variables with const. | |
982 | (_Power2_rehash_policy::_M_need_rehash): Remove const qualification. | |
983 | (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier. | |
984 | ||
732eb076 FD |
985 | 2016-05-24 François Dumont <fdumont@gcc.gnu.org> |
986 | ||
987 | * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New. | |
988 | * include/bits/hashtable_policy.h | |
989 | (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy | |
990 | having load factor management. | |
991 | (_Mask_range_hashing): New. | |
992 | (__clp2): New. | |
993 | (_Power2_rehash_policy): New. | |
994 | (_Inserts<>): Remove last template parameter, _Unique_keys, so that | |
995 | partial specializations only depend on whether iterators are constant | |
996 | or not. | |
997 | * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to | |
998 | test new hash policy. | |
999 | * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc: | |
1000 | Likewise. | |
1001 | * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: | |
1002 | Likewise. | |
1003 | * testsuite/23_containers/unordered_set/insert/hash_policy.cc: | |
1004 | Likewise. | |
1005 | * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc: | |
1006 | Likewise. | |
1007 | * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc: | |
1008 | New. | |
1009 | * testsuite/performance/23_containers/insert/54075.cc: Add benchmark | |
1010 | using the new hash policy. | |
1011 | * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise. | |
1012 | ||
8be062c6 JW |
1013 | 2016-05-24 Jonathan Wakely <jwakely@redhat.com> |
1014 | ||
1015 | * include/bits/stl_queue.h (priority_queue::value_compare): Define. | |
1016 | ||
447caf82 FD |
1017 | 2016-05-23 François Dumont <fdumont@gcc.gnu.org> |
1018 | ||
1019 | * include/debug/safe_iterator.h | |
1020 | (_Safe_iterator<>::operator->()): Implement using underlying iterator | |
1021 | operator ->. | |
1022 | * include/debug/safe_local_iterator.h | |
1023 | (_Safe_local_iterator<>::operator->()): Likewise. | |
1024 | ||
11f8114b TP |
1025 | 2016-05-20 Thomas Preud'homme <thomas.preudhomme@arm.com> |
1026 | ||
1027 | * testsuite/experimental/memory_resource/1.cc: Add required argument | |
1028 | to dg-require-atomic-builtins. | |
1029 | ||
541a9b10 JW |
1030 | 2016-05-13 Jonathan Wakely <jwakely@redhat.com> |
1031 | ||
1032 | PR libstdc++/71073 | |
1033 | * include/debug/bitset: Add #pragma GCC system_header. | |
1034 | * include/debug/deque: Likewise. | |
1035 | * include/debug/list: Likewise. | |
1036 | * include/debug/map: Likewise. | |
1037 | * include/debug/set: Likewise. | |
1038 | * include/debug/string: Likewise. | |
1039 | * include/debug/unordered_map: Likewise. | |
1040 | * include/debug/unordered_set: Likewise. | |
1041 | * include/debug/vector: Likewise. | |
1042 | * include/debug/functions.h: Adjust whitespace. | |
1043 | ||
068b220e JW |
1044 | 2016-05-12 Jonathan Wakely <jwakely@redhat.com> |
1045 | ||
1046 | PR libstdc++/71081 | |
1047 | * testsuite/experimental/memory_resource/1.cc: Require atomics. | |
1048 | ||
3d73ae6e JW |
1049 | 2016-05-11 Jonathan Wakely <jwakely@redhat.com> |
1050 | ||
1051 | PR libstdc++/71049 | |
1052 | * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define | |
1053 | exception constructors with __sso_string parameters. | |
1054 | ||
d7187f9e JW |
1055 | 2016-05-10 Jonathan Wakely <jwakely@redhat.com> |
1056 | ||
7f99d40a JW |
1057 | * include/experimental/bits/fs_dir.h (begin, end): Add noexcept. |
1058 | * testsuite/experimental/filesystem/iterators/directory_iterator.cc: | |
1059 | Test begin and end functions. | |
1060 | * testsuite/experimental/filesystem/iterators/ | |
1061 | recursive_directory_iterator.cc: Likewise. | |
1062 | ||
6fe673ad JW |
1063 | PR libstdc++/71038 |
1064 | * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions. | |
1065 | * testsuite/experimental/filesystem/operations/copy_file.cc: New test. | |
1066 | ||
77a87b2a JW |
1067 | * include/experimental/bits/fs_dir.h (__directory_iterator_proxy): |
1068 | Overload operator* to move from rvalues. | |
1069 | ||
f9a39467 JW |
1070 | PR libstdc++/71036 |
1071 | * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir. | |
1072 | * testsuite/experimental/filesystem/operations/create_directory.cc: | |
1073 | New test. | |
1074 | ||
6f0800d4 JW |
1075 | PR libstdc++/71037 |
1076 | * src/filesystem/ops.cc (canonical(const path&, const path&)): Add | |
1077 | base path to exception. | |
1078 | * testsuite/experimental/filesystem/operations/canonical.cc: Test | |
1079 | paths contained in exception. | |
1080 | ||
f10b2e1c JW |
1081 | * testsuite/experimental/type_erased_allocator/2.cc: Remove unused |
1082 | using declaration. | |
1083 | ||
d7187f9e JW |
1084 | PR libstdc++/71005 |
1085 | * include/experimental/bits/fs_dir.h (__directory_iterator_proxy): | |
1086 | New type. | |
1087 | (directory_iterator::operator++(int)): Return proxy. | |
1088 | (recursive_directory_iterator::operator++(int)): Likewise. | |
1089 | * testsuite/experimental/filesystem/iterators/directory_iterator.cc: | |
1090 | Test post-increment. | |
1091 | * testsuite/experimental/filesystem/iterators/ | |
1092 | recursive_directory_iterator.cc: Likewise. | |
1093 | ||
7972e246 JW |
1094 | 2016-05-09 Jonathan Wakely <jwakely@redhat.com> |
1095 | ||
1096 | PR libstdc++/71004 | |
1097 | * testsuite/experimental/filesystem/iterators/ | |
1098 | recursive_directory_iterator.cc: Fix test02 to not call member | |
1099 | functions on invalid iterator, and use VERIFY not assert. | |
1100 | ||
fb334765 VV |
1101 | 2016-05-09 Ville Voutilainen <ville.voutilainen@gmail.com> |
1102 | ||
1103 | Avoid endless run-time recursion for copying single-element | |
1104 | tuples where the element type is by-value constructible | |
1105 | from any type. | |
1106 | * include/std/tuple (_NotSameTuple): New. | |
1107 | * include/std/tuple (tuple(_UElements&&...): Use it. | |
1108 | * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New. | |
1109 | ||
e4cce0ce JW |
1110 | 2016-05-09 Jonathan Wakely <jwakely@redhat.com> |
1111 | ||
1112 | PR libstdc++/71004 | |
1113 | * include/experimental/bits/fs_dir.h (recursive_directory_iterator): | |
1114 | Initialize scalar member variables in default constructor. | |
1115 | * testsuite/experimental/filesystem/iterators/ | |
d7187f9e | 1116 | recursive_directory_iterator.cc: Test default construction. |
e4cce0ce | 1117 | |
40436d81 RO |
1118 | 2016-05-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
1119 | ||
1120 | * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*. | |
1121 | ||
f5c40ce2 JW |
1122 | 2016-05-05 Jonathan Wakely <jwakely@redhat.com> |
1123 | ||
1124 | * testsuite/experimental/filesystem/path/native/string.cc: Add | |
1125 | dg-require-filesystem-ts directive. | |
1126 | ||
d9cb3e75 JW |
1127 | 2016-05-04 Jonathan Wakely <jwakely@redhat.com> |
1128 | ||
1129 | PR libstdc++/70940 | |
1130 | * include/experimental/memory_resource | |
1131 | (__resource_adaptor_imp::do_allocate): Do not default-construct | |
1132 | rebound allocator. | |
1133 | (__resource_adaptor_imp::do_deallocate): Likewise. Use | |
1134 | allocator_traits to get pointer type. | |
1135 | (__null_memory_resource::do_allocate): Remove unused parameters. | |
1136 | (__null_memory_resource::do_deallocate): Likewise. | |
1137 | (__null_memory_resource::do_is_equal): Likewise. Add return statement. | |
1138 | * testsuite/experimental/type_erased_allocator/1.cc: Combine with ... | |
1139 | * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and | |
1140 | move to ... | |
1141 | * testsuite/experimental/memory_resource/1.cc: Here. | |
1142 | * testsuite/experimental/memory_resource/null_memory_resource.cc: New. | |
1143 | * testsuite/experimental/memory_resource/resource_adaptor.cc: New. | |
1144 | ||
f92ab29f CG |
1145 | 2016-04-29 Chris Gregory <czipperz@gmail.com> |
1146 | ||
1147 | * config/*: Remove trailing whitespace. | |
1148 | * src/*: Likewise. | |
1149 | * testsuite/tr1/*: Likewise. | |
1150 | * testsuite/util/*: Likewise. | |
1151 | ||
272b2ce4 JW |
1152 | 2016-04-28 Jonathan Wakely <jwakely@redhat.com> |
1153 | ||
9f9eb84e JW |
1154 | PR libstdc++/70766 |
1155 | * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use | |
1156 | __addressof. | |
1157 | * include/bits/stream_iterator.h (istream_iterator, ostream_iterator): | |
1158 | Likewise. | |
1159 | * include/std/atomic (atomic<_Tp>): Likewise. | |
1160 | * include/std/shared_mutex (shared_lock): Likewise. | |
1161 | * testsuite/24_iterators/istream_iterator/70766.cc: New test. | |
1162 | * testsuite/24_iterators/ostream_iterator/70766.cc : New test. | |
1163 | * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number. | |
1164 | * testsuite/29_atomics/atomic/70766.cc: New test. | |
1165 | * testsuite/30_threads/shared_lock/70766.cc: New test. | |
1166 | ||
272b2ce4 JW |
1167 | * include/bits/hashtable_policy.h (__detail::_Insert_base, |
1168 | __detail::_Insert): Improve comments. | |
1169 | ||
45e20696 JW |
1170 | 2016-04-27 Jonathan Wakely <jwakely@redhat.com> |
1171 | ||
1172 | PR libstdc++/70767 | |
1173 | * include/std/limits: Update comments about DRs. | |
1174 | (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>, | |
1175 | numeric_limits<const volatile _Tp>): Define unconditionally. | |
1176 | ||
a635cdb2 JW |
1177 | 2016-04-24 Jonathan Wakely <jwakely@redhat.com> |
1178 | ||
1179 | PR libstdc++/70762 | |
1180 | * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use | |
1181 | static counter to return a different path on every call. | |
1182 | ||
216f7526 TS |
1183 | 2016-04-22 Tim Shen <timshen@google.com> |
1184 | ||
1185 | PR libstdc++/70745 | |
1186 | * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary): | |
1187 | Fix the match_not_bow and match_not_eow behavior. | |
1188 | * testsuite/28_regex/regression.cc: Add testcase. | |
1189 | ||
a1e1ec76 JW |
1190 | 2016-04-20 Jonathan Wakely <jwakely@redhat.com> |
1191 | ||
1192 | PR libstdc++/69703 | |
1193 | * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in, | |
1194 | __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations. | |
1195 | ||
9c476ad4 JW |
1196 | 2016-04-19 Jonathan Wakely <jwakely@redhat.com> |
1197 | ||
29ca91f7 | 1198 | PR libstdc++/69703 |
a1e1ec76 | 1199 | * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in): |
29ca91f7 JW |
1200 | Override endianness bit in mode. |
1201 | * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test. | |
1202 | * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test | |
1203 | that little_endian mode is ignored. | |
1204 | * testsuite/experimental/filesystem/path/native/string.cc: New test. | |
1205 | ||
14905251 JW |
1206 | PR libstdc++/70609 |
1207 | * src/filesystem/ops.cc (close_fd): New function. | |
1208 | (do_copy_file): Set permissions before copying file contents. Check | |
1209 | result of closing file descriptors. Don't copy streambuf when file | |
1210 | is empty. | |
1211 | (copy(const path&, const path&, copy_options, error_code&)): Use | |
1212 | lstat for source file when copy_symlinks is set. | |
1213 | * testsuite/experimental/filesystem/operations/copy.cc: Test copy(). | |
1214 | ||
9c476ad4 JW |
1215 | * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^, |
1216 | operator~ operator&=, operator|=, operator^=): Add noexcept to | |
1217 | overloaded operators for copy_options, perms and directory_options. | |
1218 | * src/filesystem/ops.cc (make_file_type, make_file_status, | |
1219 | is_not_found_errno, file_time): Add noexcept. | |
1220 | ||
d855ad89 ESR |
1221 | 2016-04-19 Edward Smith-Rowland <3dw4rd@verizon.net> |
1222 | ||
1223 | * include/bits/c++14_warning.h: Do not refer C++14 as experimental. | |
1224 | ||
8dc1e574 JW |
1225 | 2016-04-18 Jonathan Wakely <jwakely@redhat.com> |
1226 | ||
0cded43d JW |
1227 | PR libstdc++/41759 |
1228 | * include/bits/random.h: Reword static assertion messages to state | |
1229 | positive conditions. | |
1230 | * include/bits/random.tcc: Likewise. | |
1231 | * include/bits/uniform_int_dist.h: Likewise. | |
1232 | * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error | |
1233 | patterns. | |
1234 | ||
90751aa7 JW |
1235 | * include/std/function (_Bind, _Bind_result): Remove unused typedefs. |
1236 | ||
351a5f81 JW |
1237 | * config/cpu/sh/atomicity.h: Fix typo in comment. |
1238 | ||
b05cf382 JW |
1239 | PR libstdc++/70294 |
1240 | * include/std/thread (operator<, operator==): Move definitions to | |
1241 | namespace-scope. | |
1242 | * testsuite/30_threads/thread/id/70294.cc: New test. | |
1243 | ||
4ed6e524 JW |
1244 | * testsuite/18_support/bad_exception/23591_thread-1.c: Add |
1245 | -Wno-pedantic to dg-options. | |
1246 | * testsuite/20_util/align/2.cc: Use type as operand of alignof. | |
1247 | * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic | |
1248 | to dg-options. | |
1249 | * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc: | |
1250 | Remove extra semi-colon. | |
1251 | * testsuite/23_containers/array/tuple_interface/tuple_element.cc: | |
1252 | Always supply second argument to static_assert. | |
1253 | * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra | |
1254 | semi-colon. | |
1255 | * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to | |
1256 | dg-options. | |
1257 | * testsuite/26_numerics/complex/literals/values.cc: Likewise. | |
1258 | * testsuite/29_atomics/atomic/60695.cc: Likewise. | |
1259 | * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of | |
1260 | alignof when operand is an object not a type. | |
1261 | * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options. | |
1262 | * testsuite/decimal/make-decimal.cc: Likewise. | |
1263 | * testsuite/experimental/type_traits/value.cc: Always supply second | |
1264 | argument to static_assert. | |
1265 | * testsuite/util/testsuite_common_types.h: Use __extension__ for | |
1266 | __int128 types. | |
1267 | ||
abb6e0a1 JW |
1268 | * testsuite/experimental/type_erased_allocator/1.cc: Don't include |
1269 | internal header. | |
1270 | * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise. | |
1271 | * testsuite/experimental/type_erased_allocator/2.cc: Likewise. | |
1272 | * testsuite/experimental/type_erased_allocator/uses_allocator.cc: | |
1273 | Likewise. Add licence and change to compile-only test. | |
1274 | ||
6b6147dd JW |
1275 | * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to |
1276 | unused parameter. | |
1277 | * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise. | |
1278 | ||
8dc1e574 JW |
1279 | * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare |
1280 | warnings. | |
1281 | ||
80dbaf98 ESR |
1282 | 2016-04-17 Edward Smith-Rowland <3dw4rd@verizon.net> |
1283 | ||
1284 | * include/bits/specfun.h: Trivial comment misspelling. | |
1285 | ||
9f285ccb JM |
1286 | 2016-04-14 Jason Merrill <jason@redhat.com> |
1287 | ||
1288 | Revert Jonathan's empty ABI change from yesterday. | |
1289 | ||
342fac95 MS |
1290 | 2016-04-13 Martin Sebor <msebor@redhat.com> |
1291 | ||
1292 | PR c++/69517 | |
1293 | * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA | |
1294 | upper bound is positive. | |
1295 | ||
a6297ab5 JW |
1296 | 2016-04-13 Jonathan Wakely <jwakely@redhat.com> |
1297 | ||
1298 | * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES, | |
1299 | _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define. | |
1300 | * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures | |
1301 | of functions taking empty structs by value. Add a template parameter | |
1302 | to overloads without hints. Rename overloads with hints to | |
1303 | _M_emplace_hint. | |
1304 | (_Hashtable::_M_erase(true_type, const_iterator), | |
1305 | _Hashtable::_M_erase(false_type, const_iterator)): Change signatures | |
1306 | by reordering parameters. | |
1307 | * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call | |
1308 | _M_emplace_hint instead of _M_emplace. | |
1309 | * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc), | |
1310 | shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY. | |
1311 | * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count, | |
1312 | __shared_ptr): Likewise. | |
1313 | * include/bits/stl_algo.h (replace_if): Likewise. | |
1314 | * include/bits/stl_pair.h (piecewise_construct_t, | |
1315 | piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES. | |
1316 | * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg, | |
1317 | __uses_alloc0): Likewise. | |
1318 | * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise. | |
1319 | * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error. | |
1320 | * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise. | |
1321 | * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise. | |
1322 | * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise. | |
1323 | * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise. | |
1324 | * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise. | |
1325 | ||
0c39f36d ESR |
1326 | 2016-04-12 Edward Smith-Rowland <3dw4rd@verizon.net> |
1327 | ||
1328 | Document C++17/TR29124 C++ Special Math Functions. | |
1329 | * include/bits/specfun.h: Add Doxygen markup. | |
1330 | ||
6da8b931 JW |
1331 | 2016-04-07 Jonathan Wakely <jwakely@redhat.com> |
1332 | ||
1333 | * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass. | |
1334 | ||
49a52ebc EB |
1335 | 2016-04-06 Eric Botcazou <ebotcazou@adacore.com> |
1336 | ||
1337 | * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null. | |
1338 | * src/Makefile.in: Regenerate. | |
1339 | ||
87cec93e JW |
1340 | 2016-04-05 Jonathan Wakely <jwakely@redhat.com> |
1341 | ||
d2aee115 JW |
1342 | PR libstdc++/70554 |
1343 | * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test | |
1344 | __atomic_fetch_add for bool. | |
1345 | * configure: Regenerate. | |
1346 | ||
d5ec69f3 JW |
1347 | * testsuite/30_threads/thread/70503.cc: Require -static to work. |
1348 | ||
87cec93e JW |
1349 | PR libstdc++/70503 |
1350 | * src/c++11/thread.cc (execute_native_thread_routine, | |
1351 | execute_native_thread_routine_compat): Give internal linkage. | |
1352 | * testsuite/30_threads/thread/70503.cc: New test. | |
1353 | ||
7b3318c4 VV |
1354 | 2016-04-05 Ville Voutilainen <ville.voutilainen@gmail.com> |
1355 | ||
1356 | PR libstdc++/70437 | |
1357 | * include/bits/stl_pair.h (_ConstructiblePair, | |
1358 | _ImplicitlyConvertiblePair, _MoveConstructiblePair, | |
1359 | _ImplicitlyMoveConvertiblePair): Add shortcut conditions | |
1360 | for same-type cases. | |
1361 | * testsuite/20_util/pair/70437.cc: New. | |
1362 | ||
00e6c25a JW |
1363 | 2016-03-24 Jonathan Wakely <jwakely@redhat.com> |
1364 | ||
1365 | PR libstdc++/69945 | |
1366 | * config/abi/pre/gnu.ver: Add new symbol. | |
1367 | * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define. | |
1368 | * testsuite/18_support/free_eh_pool.cc: New test. | |
1369 | ||
bfd84e6b BE |
1370 | 2016-03-23 Bernd Edlinger <bernd.edlinger@hotmail.de> |
1371 | ||
1372 | * include/Makefile.am (install-freestanding-headers): Add | |
1373 | concept_check.h and move.h to the installed headers. | |
1374 | * include/Makefile.in: Regenerated. | |
1375 | * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for | |
1376 | freestanding implementations. | |
1377 | * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention | |
1378 | that this macro has no effect for freestanding implementations. | |
1379 | * doc/html/manual/using_macros.html: Likewise. | |
1380 | ||
86715b09 JW |
1381 | 2016-02-24 Jonathan Wakely <jwakely@redhat.com> |
1382 | ||
1383 | PR libstdc++/69939 | |
1384 | * include/experimental/tuple (__apply_impl): Qualify get and forward. | |
1385 | ||
9aee022e JW |
1386 | 2016-02-23 Jonathan Wakely <jwakely@redhat.com> |
1387 | ||
be9967e8 JW |
1388 | * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__. |
1389 | * doc/html/*: Regenerate. | |
1390 | ||
9aee022e JW |
1391 | PR libstdc++/69893 |
1392 | * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc, | |
1393 | exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint, | |
1394 | llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter, | |
1395 | nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma, | |
1396 | trunc) [__cplusplus >= 201103L]: Import from namespace std. | |
1397 | (fabs) [__cplusplus < 201103L]: Import from namespace std. | |
1398 | * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]: | |
1399 | Likewise. | |
1400 | * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global | |
1401 | namespace before including TR1 headers. | |
1402 | * testsuite/tr1/headers/c++200x/math.cc: New test. | |
1403 | ||
5f6dd593 BE |
1404 | 2016-02-23 Bernd Edlinger <bernd.edlinger@hotmail.de> |
1405 | ||
1406 | PR libstdc++/69881 | |
1407 | * include/c_global/cstdarg: Undefine __need___va_list. | |
1408 | * include/c_global/cstddef: Undefine all kinds of __need_*. | |
1409 | ||
244901a5 TS |
1410 | 2016-02-16 Tim Shen <timshen@google.com> |
1411 | ||
1412 | PR libstdc++/69794 | |
1413 | * include/bits/regex_scanner.h: Add different special character | |
1414 | sets for grep and egrep regex. | |
1415 | * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly. | |
1416 | * testsuite/28_regex/regression.cc: Add new testcase. | |
1417 | ||
cc07da33 JW |
1418 | 2016-02-08 Jonathan Wakely <jwakely@redhat.com> |
1419 | ||
2158532f JW |
1420 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally |
1421 | added 'constexpr' in previous commit. | |
1422 | * configure: Regenerate. | |
1423 | ||
cc07da33 JW |
1424 | PR libstdc++/48891 |
1425 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan | |
1426 | checks for all targets except *-*-solaris2.* and ensure we find the | |
1427 | libc math.h header not our own. | |
1428 | * configure: Regenerate. | |
1429 | ||
acc04646 DV |
1430 | 2016-02-05 Dominik Vogt <vogt@linux.vnet.ibm.com> |
1431 | ||
1432 | * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC): | |
1433 | New file. Copied over from s390-linux-gnu. | |
1434 | ||
dbcda3ee JW |
1435 | 2016-02-04 Jonathan Wakely <jwakely@redhat.com> |
1436 | ||
3555173f JW |
1437 | PR libstdc++/69626 |
1438 | * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions | |
1439 | with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB. | |
1440 | * config.h.in: Regenerate. | |
1441 | * configure: Regenerate. | |
1442 | * testsuite/21_strings/c_strings/char/69626.cc: New. | |
1443 | ||
15ebf379 JW |
1444 | * doc/html/index.html: Regenerate. |
1445 | ||
dbcda3ee JW |
1446 | * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI. |
1447 | * doc/xml/manual/spine.xml: Update copyright years and author blurb. | |
1448 | * doc/html/*: Regenerate. | |
1449 | ||
571512d5 BE |
1450 | 2016-02-01 Bernd Edlinger <bernd.edlinger@hotmail.de> |
1451 | ||
1452 | PR libstdc++/69581 | |
1453 | * include/c_compatibility/math.h: Move header guards. | |
1454 | * include/c_compatibility/stdlib.h: Likewise. | |
1455 | ||
f597d5f7 JW |
1456 | 2016-01-29 Jonathan Wakely <jwakely@redhat.com> |
1457 | ||
1458 | PR libstdc++/69506 | |
1459 | * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. | |
1460 | ||
69b0daeb JDA |
1461 | 2016-01-28 John David Anglin <danglin@gcc.gnu.org> |
1462 | ||
1463 | PR libstdc++/69450 | |
1464 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete | |
1465 | isinf and isnan functions into two independent checks. Check on hpux. | |
1466 | * config.h.in: Regenerate. | |
1467 | * configure: Regenerate. | |
1468 | * include/c_global/cmath (isinf(double), isnan(double)): Use | |
1469 | _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN, | |
1470 | respectively. | |
1471 | ||
8dc781e4 JJ |
1472 | 2016-01-27 Jakub Jelinek <jakub@redhat.com> |
1473 | ||
1474 | * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>. | |
1475 | ||
bae87f7f JW |
1476 | 2016-01-27 Jonathan Wakely <jwakely@redhat.com> |
1477 | ||
1478 | PR libstdc++/69295 | |
1479 | * testsuite/ext/special_functions/hyperg/check_value.cc: Use | |
1480 | -ffp-contract=off, and -ffloat-store to disable excess precision. | |
1481 | * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use | |
1482 | -ffp-contract=off. | |
1483 | ||
f1d591e8 JW |
1484 | 2016-01-26 Jonathan Wakely <jwakely@redhat.com> |
1485 | ||
1486 | PR libstdc++/69478 | |
1487 | * include/bits/stl_algobase.h (__copy_move<_IsMove, true, | |
1488 | random_access_iterator_tag>): Check is_move_assignable when moving. | |
1489 | (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>): | |
1490 | Likewise. | |
1491 | * testsuite/25_algorithms/copy/move_iterators/69478.cc: New. | |
1492 | * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New. | |
1493 | * testsuite/25_algorithms/move/69478.cc: New. | |
1494 | * testsuite/25_algorithms/move_backward/69478.cc: new. | |
1495 | ||
8964d2a0 AP |
1496 | 2016-01-26 Andris Pavenis <andris.pavenis@iki.fi> |
1497 | ||
1498 | * include/c_compatibility/stdlib.h: Include wide character related | |
1499 | definitions only when they are available in cstdlib. | |
1500 | ||
2944621e JW |
1501 | 2016-01-25 Jonathan Wakely <jwakely@redhat.com> |
1502 | ||
1503 | PR libstdc++/69464 | |
1504 | * include/Makefile.am: Add new header. | |
1505 | * include/Makefile.in: Regenerate. | |
1506 | * include/bits/random.h (uniform_int_distribution): Move to | |
1507 | bits/uniform_int_dist.h. | |
1508 | * include/bits/random.tcc (uniform_int_distribution::operator(), | |
1509 | uniform_int_distribution::__generate_impl): Likewise. | |
1510 | * include/bits/uniform_int_dist.h: New header. | |
1511 | * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include | |
1512 | <bits/uniform_int_dist.h> instead of <random>. | |
1513 | * testsuite/20_util/specialized_algorithms/uninitialized_copy/ | |
1514 | move_iterators/1.cc: Include correct header for uninitialized_copy. | |
1515 | * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/ | |
1516 | move_iterators/1.cc: Likewise. | |
1517 | * testsuite/25_algorithms/nth_element/58800.cc: Include correct | |
1518 | header for vector. | |
1519 | * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines. | |
1520 | ||
3676c087 JDA |
1521 | 2016-01-23 John David Anglin <danglin@gcc.gnu.org> |
1522 | ||
1523 | PR libstdc++/69446 | |
1524 | * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. | |
1525 | ||
02dc2419 ESR |
1526 | 2016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net> |
1527 | ||
1528 | TR29124 C++ Special Math - <math.h> pulls funcs into global namespace. | |
1529 | * include/c_compatibility/math.h: Import the TR29124 functions | |
1530 | into the global namespace. | |
1531 | * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove | |
1532 | xfail and make compile-only. | |
1533 | * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto. | |
1534 | * testsuite/special_functions/03_beta/compile_2.cc: Ditto. | |
1535 | * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto. | |
1536 | * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto. | |
1537 | * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto. | |
1538 | * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto. | |
1539 | * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto. | |
1540 | * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto. | |
1541 | * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto. | |
1542 | * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto. | |
1543 | * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto. | |
1544 | * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto. | |
1545 | * testsuite/special_functions/14_expint/compile_2.cc: Ditto. | |
1546 | * testsuite/special_functions/15_hermite/compile_2.cc: Ditto. | |
1547 | * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto. | |
1548 | * testsuite/special_functions/17_legendre/compile_2.cc: Ditto. | |
1549 | * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto. | |
1550 | * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto. | |
1551 | * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto. | |
1552 | * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto. | |
1553 | ||
350fe282 JW |
1554 | 2016-01-22 Jonathan Wakely <jwakely@redhat.com> |
1555 | ||
d1fb377c JW |
1556 | PR libstdc++/69116 |
1557 | * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only | |
1558 | define result_type for types which can be safely used with valarrays. | |
1559 | * testsuite/26_numerics/valarray/69116.cc: New. | |
1560 | ||
350fe282 JW |
1561 | PR libstdc++/69413 |
1562 | * config/os/gnu-linux/os_defines.h: Define | |
1563 | _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC. | |
1564 | * include/c_global/cmath (isinf, isnan): Check it. | |
1565 | * doc/xml/manual/internals.xml: Document it. | |
1566 | * doc/html/*: Regenerate. | |
1567 | ||
ab56cbed JW |
1568 | 2016-01-21 Jonathan Wakely <jwakely@redhat.com> |
1569 | ||
1570 | PR libstdc++/69406 | |
1571 | * include/bits/cpp_type_traits.h: Ensure C++ language linkage. | |
1572 | * include/ext/type_traits.h: Likewise. | |
1573 | * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros | |
1574 | for presence of C headers. | |
1575 | * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust | |
1576 | dg-error line number. | |
1577 | * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise. | |
1578 | * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise. | |
1579 | * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise. | |
1580 | ||
7e10bcfa TR |
1581 | 2016-01-20 Torvald Riegel <triegel@redhat.com> |
1582 | ||
1583 | PR libstdc++/69310 | |
1584 | * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. | |
1585 | ||
eac437bf JW |
1586 | 2016-01-20 Jonathan Wakely <jwakely@redhat.com> |
1587 | ||
3f93466a JW |
1588 | PR libstdc++/60401 |
1589 | * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt, | |
1590 | copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, | |
1591 | lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint, | |
1592 | nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn, | |
1593 | tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]: | |
1594 | Add using declarations. | |
1595 | * testsuite/26_numerics/headers/cmath/60401.cc: New. | |
1596 | ||
eac437bf JW |
1597 | PR libstdc++/69386 |
1598 | * include/c_global/ccomplex: Ensure C++ language linkage. | |
1599 | * include/c_global/cmath: Likewise. | |
1600 | * include/c_global/cstdlib: Likewise. | |
1601 | * include/c_global/ctgmath: Likewise. | |
1602 | * testsuite/17_intro/headers/c++2011/linkage.cc: New. | |
1603 | ||
96e19ada JW |
1604 | 2016-01-19 Jonathan Wakely <jwakely@redhat.com> |
1605 | ||
1606 | PR libstdc++/14608 | |
1607 | PR libstdc++/60401 | |
1608 | * include/Makefile.am: Use c_compatibility math.h and stdlib.h for | |
1609 | --enable-cheaders=c_global configs. | |
1610 | * include/Makefile.in: Regenerate. | |
1611 | * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C | |
1612 | test and allow inclusion from C files. | |
1613 | * include/c_compatibility/stdlib.h: Likewise. Support freestanding. | |
1614 | (at_quick_exit, quick_exit): Add using directives. | |
1615 | * include/c_global/cmath: Use #include_next for math.h. | |
1616 | * include/c_global/cstdlib: Use #include_next for stdlib.h. | |
1617 | * testsuite/26_numerics/headers/cmath/14608.cc: New. | |
1618 | * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc: | |
1619 | Remove xfail for most targets. | |
1620 | * testsuite/26_numerics/headers/cstdlib/60401.cc: New. | |
1621 | ||
9585381a TR |
1622 | 2016-01-18 Torvald Riegel <triegel@redhat.com> |
1623 | ||
1624 | * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New. | |
1625 | (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF | |
1626 | and move after its definition. | |
1627 | * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override. | |
1628 | * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of | |
1629 | __GXX_WEAK__, and only provide transactional clones if | |
1630 | _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm | |
1631 | functions. | |
1632 | ||
f5460595 JW |
1633 | 2016-01-18 Jonathan Wakely <jwakely@redhat.com> |
1634 | ||
c91bcffc JW |
1635 | PR libstdc++/60637 |
1636 | * testsuite/26_numerics/headers/cmath/60637.cc: Add test. | |
1637 | ||
d75d9f91 | 1638 | PR libstdc++/69243 |
9c5ad80e JW |
1639 | * include/std/functional (_Function_base::_M_not_empty_function): |
1640 | Change overloads for pointers to take arguments by value. | |
1641 | * testsuite/20_util/function/cons/57465.cc: Add tests for | |
1642 | pointer-to-member cases. | |
1643 | ||
f5460595 JW |
1644 | PR libstdc++/69340 |
1645 | * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions): | |
1646 | Use macros for exception handling and fix unused parameter warning. | |
1647 | ||
271366f6 JDA |
1648 | 2016-01-17 John David Anglin <danglin@gcc.gnu.org> |
1649 | ||
1650 | PR libstdc++/68734 | |
1651 | * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update. | |
1652 | ||
7a5d1d34 TR |
1653 | 2016-01-17 Torvald Riegel <triegel@redhat.com> |
1654 | ||
1655 | * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert. | |
1656 | ||
5445d5bf L |
1657 | 2016-01-16 H.J. Lu <hongjiu.lu@intel.com> |
1658 | ||
1659 | * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add | |
1660 | __int128 symbols. | |
1661 | ||
3d076231 JW |
1662 | 2016-01-15 Jonathan Wakely <jwakely@redhat.com> |
1663 | ||
d7c1581c JW |
1664 | PR libstdc++/69293 |
1665 | * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add | |
1666 | static assertion that type is constructible from the arguments. | |
1667 | * testsuite/20_util/scoped_allocator/69293_neg.cc: New. | |
1668 | * testsuite/20_util/uses_allocator/69293_neg.cc: New. | |
1669 | * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error. | |
1670 | ||
3d076231 JW |
1671 | PR libstdc++/69294 |
1672 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf | |
1673 | and isnan on AIX. Quote variables. | |
1674 | * configure: Regenerate. | |
1675 | ||
a04d5fc9 TR |
1676 | 2016-01-15 Torvald Riegel <triegel@redhat.com> |
1677 | ||
1678 | * include/bits/basic_string.h (basic_string): Declare friends. | |
1679 | * include/bits/c++config (_GLIBCXX_TXN_SAFE, | |
1680 | _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New. | |
1681 | * include/std/stdexcept (logic_error, domain_error, invalid_argument, | |
1682 | length_error, out_of_range, runtime_error, range_error, | |
1683 | underflow_error, overflow_error): Declare members as transaction-safe. | |
1684 | (logic_error, runtime_error): Declare friend functions. | |
1685 | * libsupc++/exception (exception, bad_exception): Declare members as | |
1686 | transaction-safe. | |
1687 | * src/c++11/cow-stdexcept.cc: Define transactional clones for the | |
1688 | transaction-safe members of exceptions and helper functions. | |
1689 | * libsupc++/eh_exception.cc: Adjust and define transactional clones. | |
1690 | * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones. | |
1691 | (CXXABI_1.3.10): New. | |
1692 | * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New. | |
1693 | (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW. | |
1694 | * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING. | |
1695 | * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h. | |
1696 | * include/Makefile.in: Regenerate. | |
1697 | * config.h.in: Regenerate. | |
1698 | * configure: Regenerate. | |
1699 | * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10. | |
1700 | ||
cebeb718 SE |
1701 | 2016-01-15 Steve Ellcey <sellcey@imgtec.com> |
1702 | ||
1703 | * include/ext/random.tcc: Use __builtin_isfinite instead of | |
1704 | std::isfinite. | |
1705 | ||
3b07547d JW |
1706 | 2016-01-15 Jonathan Wakely <jwakely@redhat.com> |
1707 | ||
1708 | * include/bits/std_mutex.h: Fix Doxygen @file name. | |
1709 | ||
2be75957 ESR |
1710 | 2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net> |
1711 | Jonathan Wakely <jwakely@redhat.com> | |
1712 | Florian Goth <CaptainSifff@gmx.de> | |
1713 | ||
1714 | Implement TR29124 C++ special Math Functions. | |
1715 | * include/Makefile.am: Add new headers. | |
1716 | * include/Makefile.in: Regenerate. | |
1717 | * include/bits/specfun.h: New. | |
1718 | * include/c_global/cmath: Adjust for both tr1 and tr29124 maths. | |
1719 | * include/tr1/bessel_function.tcc: Ditto. | |
1720 | * include/tr1/beta_function.tcc: Ditto. | |
1721 | * include/tr1/cmath: Ditto. | |
1722 | * include/tr1/ell_integral.tcc: Ditto. | |
1723 | * include/tr1/exp_integral.tcc: Ditto. | |
1724 | * include/tr1/gamma.tcc: Ditto. | |
1725 | * include/tr1/hypergeometric.tcc: Ditto. | |
1726 | * include/tr1/legendre_function.tcc: Ditto. | |
1727 | * include/tr1/modified_bessel_func.tcc: Ditto. | |
1728 | * include/tr1/poly_hermite.tcc: Ditto. | |
1729 | * include/tr1/poly_laguerre.tcc: Ditto. | |
1730 | * include/tr1/riemann_zeta.tcc: Ditto. | |
1731 | * include/tr1/special_function_util.h: Ditto. | |
1732 | * testsuite/ext/special_functions/conf_hyperg: New. | |
1733 | * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New. | |
1734 | * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New. | |
1735 | * testsuite/ext/special_functions/conf_hyperg/compile.cc: New. | |
1736 | * testsuite/ext/special_functions/hyperg: New. | |
1737 | * testsuite/ext/special_functions/hyperg/check_nan.cc: New. | |
1738 | * testsuite/ext/special_functions/hyperg/check_value.cc: New. | |
1739 | * testsuite/ext/special_functions/hyperg/compile.cc: New. | |
1740 | * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory. | |
1741 | * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New. | |
1742 | * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New. | |
1743 | * testsuite/special_functions/01_assoc_laguerre/compile.cc: New. | |
1744 | * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New. | |
1745 | * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New. | |
1746 | * testsuite/special_functions/02_assoc_legendre/check_value.cc: New. | |
1747 | * testsuite/special_functions/02_assoc_legendre/compile.cc: New. | |
1748 | * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New. | |
1749 | * testsuite/special_functions/03_beta/check_nan.cc: New. | |
1750 | * testsuite/special_functions/03_beta/check_value.cc: New. | |
1751 | * testsuite/special_functions/03_beta/compile.cc: New. | |
1752 | * testsuite/special_functions/03_beta/compile_2.cc: New. | |
1753 | * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New. | |
1754 | * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New. | |
1755 | * testsuite/special_functions/04_comp_ellint_1/compile.cc: New. | |
1756 | * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New. | |
1757 | * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New. | |
1758 | * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New. | |
1759 | * testsuite/special_functions/05_comp_ellint_2/compile.cc: New. | |
1760 | * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New. | |
1761 | * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New. | |
1762 | * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New. | |
1763 | * testsuite/special_functions/06_comp_ellint_3/compile.cc: New. | |
1764 | * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New. | |
1765 | * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New. | |
1766 | * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New. | |
1767 | * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New. | |
1768 | * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New. | |
1769 | * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New. | |
1770 | * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New. | |
1771 | * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New. | |
1772 | * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New. | |
1773 | * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New. | |
1774 | * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New. | |
1775 | * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New. | |
1776 | * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New. | |
1777 | * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New. | |
1778 | * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New. | |
1779 | * testsuite/special_functions/10_cyl_neumann/check_value.cc: New. | |
1780 | * testsuite/special_functions/10_cyl_neumann/compile.cc: New. | |
1781 | * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New. | |
1782 | * testsuite/special_functions/11_ellint_1/check_nan.cc: New. | |
1783 | * testsuite/special_functions/11_ellint_1/check_value.cc: New. | |
1784 | * testsuite/special_functions/11_ellint_1/compile.cc: New. | |
1785 | * testsuite/special_functions/11_ellint_1/compile_2.cc: New. | |
1786 | * testsuite/special_functions/12_ellint_2/check_nan.cc: New. | |
1787 | * testsuite/special_functions/12_ellint_2/check_value.cc: New. | |
1788 | * testsuite/special_functions/12_ellint_2/compile.cc: New. | |
1789 | * testsuite/special_functions/12_ellint_2/compile_2.cc: New. | |
1790 | * testsuite/special_functions/13_ellint_3/check_nan.cc: New. | |
1791 | * testsuite/special_functions/13_ellint_3/check_value.cc: New. | |
1792 | * testsuite/special_functions/13_ellint_3/compile.cc: New. | |
1793 | * testsuite/special_functions/13_ellint_3/compile_2.cc: New. | |
1794 | * testsuite/special_functions/14_expint/check_nan.cc: New. | |
1795 | * testsuite/special_functions/14_expint/check_value.cc: New. | |
1796 | * testsuite/special_functions/14_expint/compile.cc: New. | |
1797 | * testsuite/special_functions/14_expint/compile_2.cc: New. | |
1798 | * testsuite/special_functions/15_hermite/check_nan.cc: New. | |
1799 | * testsuite/special_functions/15_hermite/check_value.cc: New. | |
1800 | * testsuite/special_functions/15_hermite/compile.cc: New. | |
1801 | * testsuite/special_functions/15_hermite/compile_2.cc: New. | |
1802 | * testsuite/special_functions/16_laguerre/check_nan.cc: New. | |
1803 | * testsuite/special_functions/16_laguerre/check_value.cc: New. | |
1804 | * testsuite/special_functions/16_laguerre/compile.cc: New. | |
1805 | * testsuite/special_functions/16_laguerre/compile_2.cc: New. | |
1806 | * testsuite/special_functions/17_legendre/check_nan.cc: New. | |
1807 | * testsuite/special_functions/17_legendre/check_value.cc: New. | |
1808 | * testsuite/special_functions/17_legendre/compile.cc: New. | |
1809 | * testsuite/special_functions/17_legendre/compile_2.cc: New. | |
1810 | * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New. | |
1811 | * testsuite/special_functions/18_riemann_zeta/check_value.cc: New. | |
1812 | * testsuite/special_functions/18_riemann_zeta/compile.cc: New. | |
1813 | * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New. | |
1814 | * testsuite/special_functions/19_sph_bessel/check_nan.cc: New. | |
1815 | * testsuite/special_functions/19_sph_bessel/check_value.cc: New. | |
1816 | * testsuite/special_functions/19_sph_bessel/compile.cc: New. | |
1817 | * testsuite/special_functions/19_sph_bessel/compile_2.cc: New. | |
1818 | * testsuite/special_functions/20_sph_legendre/check_nan.cc: New. | |
1819 | * testsuite/special_functions/20_sph_legendre/check_value.cc: New. | |
1820 | * testsuite/special_functions/20_sph_legendre/compile.cc: New. | |
1821 | * testsuite/special_functions/20_sph_legendre/compile_2.cc: New. | |
1822 | * testsuite/special_functions/21_sph_neumann/check_nan.cc: New. | |
1823 | * testsuite/special_functions/21_sph_neumann/check_value.cc: New. | |
1824 | * testsuite/special_functions/21_sph_neumann/compile.cc: New. | |
1825 | * testsuite/special_functions/21_sph_neumann/compile_2.cc: New. | |
1826 | * testsuite/util/specfun_testcase.h: New. | |
1827 | * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases. | |
1828 | * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto. | |
1829 | * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto. | |
1830 | * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto. | |
1831 | * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto. | |
1832 | * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto. | |
1833 | * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New. | |
1834 | ||
39a1d8c8 JW |
1835 | 2016-01-13 Jonathan Wakely <jwakely@redhat.com> |
1836 | ||
1837 | PR libstdc++/48891 | |
1838 | * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf | |
1839 | and isnan functions. | |
1840 | * config.h.in: Regenerate. | |
1841 | * configure: Regenerate. | |
1842 | * include/c_global/cmath (isinf(double), isnan(double)) | |
1843 | [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive. | |
1844 | * testsuite/26_numerics/headers/cmath/48891.cc: New. | |
1845 | ||
e862906c RO |
1846 | 2016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
1847 | ||
1848 | PR libstdc++/66006 | |
1849 | * configure.host (abi_baseline_pair): Use separate baseline for | |
1850 | Solaris 11+ and Solaris 10 with gld. | |
1851 | * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file. | |
1852 | * config/abi/post/solaris2.11/baseline_symbols.txt: New file. | |
1853 | * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file. | |
1854 | ||
26b5ace7 DK |
1855 | 2016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com> |
1856 | ||
1857 | PR libstdc++/68877 | |
1858 | * include/std/type_traits: Following N4511, reimplement __is_swappable | |
1859 | and __is_nothrow_swappable. Move __is_swappable to namespace std, | |
1860 | adjust callers. Use __is_nothrow_swappable in swap. | |
1861 | * include/bits/move.h: Use __is_nothrow_swappable in swap. | |
1862 | * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove | |
1863 | __is_swappable related tests. | |
1864 | * testsuite/20_util/is_swappable/value.cc: New. | |
1865 | * testsuite/20_util/is_swappable/requirements/ | |
1866 | explicit_instantiation.cc: New. | |
1867 | * testsuite/20_util/is_swappable/requirements/typedefs.cc: New. | |
1868 | * testsuite/25_algorithms/swap/68877.cc: New. | |
1869 | ||
1c3c7c41 JW |
1870 | 2016-01-12 Jonathan Wakely <jwakely@redhat.com> |
1871 | ||
bd285a8b JW |
1872 | * testsuite/20_util/function/68995.cc: Test reference_wrapper cases. |
1873 | ||
1c3c7c41 JW |
1874 | PR libstdc++/69005 |
1875 | PR libstdc++/69222 | |
1876 | * include/std/functional (function::_Invoke): Remove, use result_of. | |
1877 | (function::_Callable): Replace alias template with class template | |
1878 | and use partial specialization instead of _NotSelf alias template. | |
1879 | (function(_Functor)): Add "not self" constraint so that _Callable is | |
1880 | not used while type is incomplete. | |
1881 | * testsuite/20_util/function/69222.cc: New. | |
1882 | ||
1517bc30 JW |
1883 | 2016-01-11 Jonathan Wakely <jwakely@redhat.com> |
1884 | ||
1885 | PR libstdc++/60976 | |
1886 | * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>): | |
1887 | Define partial specialization. | |
1888 | * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and | |
1889 | destroy members to std::allocator explicit specialization. | |
1890 | ||
e525d78c JW |
1891 | 2016-01-08 Jonathan Wakely <jwakely@redhat.com> |
1892 | ||
8babc12b JW |
1893 | * testsuite/26_numerics/headers/cmath/ |
1894 | c99_classification_macros_c++.cc: Rename to ... | |
1895 | * testsuite/26_numerics/headers/cmath/ | |
1896 | c99_classification_macros_c++98.cc: Here and add -std=gnu++98. | |
1897 | * testsuite/26_numerics/headers/cmath/ | |
1898 | c99_classification_macros_c++0x.cc: Rename to ... | |
1899 | * testsuite/26_numerics/headers/cmath/ | |
1900 | c99_classification_macros_c++11.cc: Here. | |
1901 | ||
32a8c97f | 1902 | PR libstdc++/69190 |
e525d78c JW |
1903 | * include/bits/uses_allocator.h: Add missing include. |
1904 | ||
f885fa89 JW |
1905 | 2016-01-07 Jonathan Wakely <jwakely@redhat.com> |
1906 | ||
1907 | PR libstdc++/69105 | |
1908 | PR libstdc++/69106 | |
1909 | PR libstdc++/69114 | |
1910 | * include/bits/stl_iterator.h (back_insert_iterator, | |
1911 | front_insert_iterator, insert_iterator): Use __addressof (LWG 2324). | |
1912 | * include/bits/uses_allocator.h (__use_alloc): Use __addressof. | |
1913 | * include/std/future (__future::base::_State_baseV2::__setter): | |
1914 | Likewise. | |
1915 | * include/std/scoped_allocator (__outermost): Likewise. | |
1916 | * testsuite/20_util/scoped_allocator/69114.cc: New. | |
1917 | * testsuite/20_util/uses_allocator/69114.cc: New. | |
1918 | * testsuite/30_threads/promise/69106.cc: New. | |
1919 | ||
0c3e5dd1 JW |
1920 | 2016-01-06 Jonathan Wakely <jwakely@redhat.com> |
1921 | ||
373a75fb JW |
1922 | PR libstdc++/69092 |
1923 | * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>): | |
1924 | Remove _GLIBCXX_NOEXCEPT. | |
1925 | testsuite/21_strings/basic_string/cons/char/69092.cc: New. | |
1926 | ||
0c3e5dd1 JW |
1927 | * include/Makefile.am: Adjust. |
1928 | * include/Makefile.in: Regenerate. | |
1929 | * include/bits/mutex.h: Rename to bits/std_mutex.h. | |
1930 | * include/std/condition_variable: Adjust include. | |
1931 | * include/std/mutex: Likewise. | |
1932 | ||
818ab71a | 1933 | 2016-01-04 Jakub Jelinek <jakub@redhat.com> |
5624e564 JJ |
1934 | |
1935 | Update copyright years. | |
b4df5e92 | 1936 | \f |
818ab71a | 1937 | Copyright (C) 2016 Free Software Foundation, Inc. |
b4df5e92 JW |
1938 | |
1939 | Copying and distribution of this file, with or without modification, | |
1940 | are permitted in any medium without royalty provided the copyright | |
1941 | notice and this notice are preserved. |