]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
[NDS32] Implment n10 pipeline.
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
0f8a1c15
JW
12018-05-10 Jonathan Wakely <jwakely@redhat.com>
2
3 * doc/xml/faq.xml: Link to C++17 status. Add note to outdated answer.
4 * doc/xml/manual/debug_mode.xml: Add array and forward_list to list
5 of C++11 containers with Debug Mode support.
6 * doc/xml/manual/using.xml: Document Dual ABI for ios_base::failure.
7 * doc/html/*: Regenerate.
8
a6e1cfdd
JM
92018-05-10 Jason Merrill <jason@redhat.com>
10
11 * include/bits/regex_compiler.h (_S_cache_size): Change from
12 function to variable.
13
88bf4c34
ESR
142018-05-10 Edward Smith-Rowland <3dw4rd@verizon.net>
15
16 PR libstdc++/83140 - assoc_legendre returns negated value when m is odd
17 * include/tr1/legendre_function.tcc (__assoc_legendre_p): Add __phase
18 argument defaulted to +1. Doxy comments on same.
19 * testsuite/special_functions/02_assoc_legendre/
3a2e98ce 20 check_value.cc: Regen.
88bf4c34 21 * testsuite/tr1/5_numerical_facilities/special_functions/
3a2e98ce 22 02_assoc_legendre/check_value.cc: Regen.
88bf4c34 23
daf69489
JW
242018-05-10 Jonathan Wakely <jwakely@redhat.com>
25
26 PR libstdc++/85729
27 * include/bits/c++config.h (__replacement_assert): Add linkage
28 specification.
29 * include/bits/std_abs.h: Add comment to closing brace of block.
30 * include/c_global/cstddef: Add linkage specification.
31 * include/c_global/cstring: Likewise.
32 * include/c_global/cwchar: Likewise.
33
6c882d0f
FD
342018-05-09 François Dumont <fdumont@gcc.gnu.org>
35
36 * include/debug/safe_iterator.h (_Safe_iterator<>::_M_constant()):
37 Rename in...
38 (_Safe_iterator<>::_S_constant()): ...that.
39 * include/debug/safe_local_iterator.h
40 (_Safe_local_iterator<>::_M_constant()): Rename in...
41 (_Safe_local_iterator<>::_S_constant()): ...that.
42 * include/debug/formatter.h: Remove bits/cpp_type_traits.h include.
43 (_Iterator_state::__rbegin): New.
44 (_Iterator_state::__rmiddle): New.
45 (_Iterator_state::__rend): New.
46 (_Parameter::_Parameter(const _Safe_iterator<>&, const char*,
47 _Is_iterator)): Use _Safe_iterator<>::_S_constant. Grab normal underlying
48 iterator type.
49 (_Parameter::_Parameter(const _Safe_local_iterator<>&, const char*,
50 _Is_iterator)): Likewise.
51 (_Parameter::_S_reverse_state(_Iterator_state)): New.
0f8a1c15 52 (_Parameter(__gnu_cxx::__normal_iterator<> const&, const char*,
6c882d0f
FD
53 _Is_iterator)): New.
54 (_Parameter(std::reverse_iterator<> const&, const char*,
55 _Is_iterator)): New.
56 (_Parameter(std::reverse_iterator<_Safe_iterator<>> const&,
57 const char*, _Is_iterator)): New.
58 (_Parameter(std::move_iterator<> const&, const char*, _Is_iterator):
59 New.
60 (_Parameter(std::move_iterator<_Safe_iterator<>> const&, const char*,
61 _Is_iterator)): New.
62 * testsuite/24_iterators/move_iterator/debug_neg.cc: New.
63 * testsuite/24_iterators/normal_iterator/debug_neg.cc: New.
64 * testsuite/24_iterators/reverse_iterator/debug_neg.cc: New.
65
88b1e41c
JW
662018-05-09 Jonathan Wakely <jwakely@redhat.com>
67
68 * include/bits/std_function.h (_Base_manager::_M_get_pointer):
69 Use constexpr if in C++17 mode.
70 (_Base_manager::_M_clone(_Any_data&, const _Any_data&, true_type)):
71 Copy from const object.
72 * testsuite/20_util/function/cons/non_copyconstructible.cc: New.
73
a5277405
FD
742018-05-08 François Dumont <fdumont@gcc.gnu.org>
75
e95a74fd
FD
76 * src/c++11/debug.cc [_GLIBCXX_HAVE_EXECINFO_H]: Include execinfo.h.
77 [_GLIBCXX_HAVE_EXECINFO_H](_Error_formatter::_M_error): Render
78 backtrace.
79
90aabc7e
FD
80 * include/debug/macros.h (__glibcxx_check_valid_range_at): New.
81 * include/debug/functions.h (__check_valid_range): Use latter.
82 * include/debug/macros.h (__glibcxx_check_valid_constructor_range): New,
83 use latter.
84 * include/debug/deque
85 (deque::deque<_Iter>(_Iter, _Iter, const _Alloc&)): Use latter.
86 * include/debug/forward_list
87 (forward_list::forward_list<_Iter>(_Iter, _Iter, const _Alloc&)):
88 Likewise.
89 * include/debug/list
90 (list::list<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
91 * include/debug/list
92 (list::list<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
93 * include/debug/map.h
94 (map::map<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
95 (map::map<_Iter>(_Iter, _Iter, const _Compare&, const _Alloc&)):
96 Likewise.
97 * include/debug/multimap.h
98 (multimap::multimap<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
99 (multimap::multimap<_Iter>(_Iter, _Iter, const _Compare&,
100 const _Alloc&)): Likewise.
101 * include/debug/set.h
102 (set::set<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
103 (set::set<_Iter>(_Iter, _Iter, const _Compare&, const _Alloc&)):
104 Likewise.
105 * include/debug/multiset.h
106 (multiset::multiset<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
107 (multiset::multiset<_Iter>(_Iter, _Iter, const _Compare&,
108 const _Alloc&)): Likewise.
109 * include/debug/string
110 (basic_string::basic_string<_Iter>(_Iter, _Iter, const _Alloc&)):
111 Likewise.
112 * include/debug/unordered_map
113 (unordered_map::unordered_map<_Iter>(_Iter, _Iter, const _Alloc&)):
114 Likewise.
115 (unordered_multimap::unordered_multimap<_Iter>(_Iter, _Iter,
116 const _Alloc&)): Likewise.
117 * include/debug/unordered_set
118 (unordered_set::unordered_set<_Iter>(_Iter, _Iter, const _Alloc&)):
119 Likewise.
120 (unordered_multiset::unordered_multiset<_Iter>(_Iter, _Iter,
121 const _Alloc&)): Likewise.
122 * include/debug/vector
123 (vector::vector<_Iter>(_Iter, _Iter, const _Alloc&)): Use latter.
124
a5277405
FD
125 * include/debug/formatter.h (_Error_formatter::_M_function): New.
126 (_Error_formatter(const char*, unsigned int)): Adapt.
127 (_Error_formatter::_M_at): Rename in...
128 (_Error_formatter::_S_at): ...that and adapt.
129 * include/debug/macros.h (_GLIBCXX_DEBUG_VERIFY_AT_F): New.
130 (_GLIBCXX_DEBUG_VERIFY_AT, _GLIBCXX_DEBUG_VERIFY): Adapt.
131 * src/c++11/debug.cc (_Error_formatter::_M_error): Render _M_function
132 when available.
133
41c3db9f
JW
1342018-05-08 Jonathan Wakely <jwakely@redhat.com>
135
ec332f1b
JW
136 * include/bits/regex_automaton.h (_NFA_base::_M_paren_stack, _NFA):
137 Use normal std::vector even in Debug Mode.
138
41c3db9f
JW
139 PR libstdc++/85672
140 * include/Makefile.am [!ENABLE_FLOAT128]: Change c++config.h entry
141 to #undef _GLIBCXX_USE_FLOAT128 instead of defining it to zero.
142 * include/Makefile.in: Regenerate.
143 * include/bits/c++config (_GLIBCXX_USE_FLOAT128): Move definition
144 within conditional block.
145
a989f637
JW
1462018-05-07 Jonathan Wakely <jwakely@redhat.com>
147
b83f5981
JW
148 * doc/xml/manual/using.xml (table.cmd_options): Document that the
149 C++17 Filesystem implementation also needs -lstdc++fs.
150
a989f637
JW
151 PR libstdc++/85671
152 * include/bits/fs_path.h (operator/): Permit copy elision.
153 * include/experimental/bits/fs_path.h (operator/): Likewise.
154
228aa0ec
ESR
1552018-05-07 Edward Smith-Rowland <3dw4rd@verizon.net>
156
157 Moar PR libstdc++/80506
158 * include/bits/random.tcc (gamma_distribution::__generate_impl()):
159 Fix magic number used in loop condition.
160
d6ed6b07
JW
1612018-05-04 Jonathan Wakely <jwakely@redhat.com>
162
163 PR libstdc++/85642 fix is_nothrow_default_constructible<optional<T>>
164 * include/std/optional (_Optional_payload): Add noexcept to default
165 constructor. Re-indent.
166 (_Optional_payload<_Tp, true, true, true>): Likewise. Add noexcept to
167 constructor for copying disengaged payloads.
168 (_Optional_payload<_Tp, true, false, true>): Likewise.
169 (_Optional_payload<_Tp, true, true, false>): Likewise.
170 (_Optional_payload<_Tp, true, false, false>): Likewise.
171 * testsuite/20_util/optional/cons/85642.cc: New.
172 * testsuite/20_util/optional/cons/value_neg.cc: Adjust dg-error lines.
173
6791489e
JW
1742018-05-03 Jonathan Wakely <jwakely@redhat.com>
175
86f66562
JW
176 PR libstdc++/82644
177 * include/tr1/cmath [__STRICT_ANSI__] (hypergf, hypergl, hyperg): Use
178 inline definitions instead of using-declarations.
179 [__STRICT_ANSI__] (conf_hypergf, conf_hypergl, conf_hyperg): Likewise.
180 * testsuite/tr1/5_numerical_facilities/special_functions/
181 07_conf_hyperg/compile_cxx17.cc: New.
182 * testsuite/tr1/5_numerical_facilities/special_functions/
183 17_hyperg/compile_cxx17.cc: New.
184
1ee021f2
JW
185 PR libstdc++/84769
186 * include/std/variant (visit): Qualify std::get call.
187
2e023647
JW
188 PR libstdc++/85632 use uintmax_t for arithmetic
189 * src/filesystem/ops.cc (experimental::filesystem::space): Perform
190 arithmetic in result type.
191 * src/filesystem/std-ops.cc (filesystem::space): Likewise.
192 * testsuite/27_io/filesystem/operations/space.cc: Check total capacity
193 is greater than free space.
194 * testsuite/experimental/filesystem/operations/space.cc: New.
195
adba76a3
JW
196 * testsuite/20_util/remove_cvref/requirements/alias_decl.cc: New.
197 * testsuite/20_util/remove_cvref/requirements/explicit_instantiation.cc:
198 New.
199 * testsuite/20_util/remove_cvref/value.cc: New.
200 * testsuite/20_util/remove_cvref/value_ext.cc: New.
201
852ee53c
JW
202 PR libstdc++/84087 LWG DR 2268 basic_string default arguments
203 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI=1]
204 (append(const basic_string&, size_type, size_type)
205 (assign(const basic_string&, size_type, size_type)
206 (insert(size_type, const basic_string&, size_type, size_type)
207 (replace(size_type,size_type,const basic_string&,size_type,size_type)
208 (compare(size_type,size_type,constbasic_string&,size_type,size_type)):
209 Add default arguments (LWG 2268).
210 [_GLIBCXX_USE_CXX11_ABI=0]
211 (append(const basic_string&, size_type, size_type)
212 (assign(const basic_string&, size_type, size_type)
213 (insert(size_type, const basic_string&, size_type, size_type)
214 (replace(size_type,size_type,const basic_string&,size_type,size_type)
215 (compare(size_type,size_type,constbasic_string&,size_type,size_type)):
216 Likewise.
217 * testsuite/21_strings/basic_string/dr2268.cc: New test.
218
d49b3426
JW
219 PR libstdc++/84535
220 * include/std/thread (thread::__not_same): New SFINAE helper.
221 (thread::thread(_Callable&&, _Args&&...)): Add SFINAE constraint that
222 first argument is not a std::thread. Add static assertion to check
223 INVOKE expression is valid.
224 (thread::thread(thread&), thread::thread(const thread&&)): Remove.
225 (thread::_Invoke::_M_invoke, thread::_Invoke::operator()): Use
226 __invoke_result for return types and remove exception specifications.
227 * testsuite/30_threads/thread/cons/84535.cc: New.
228
9e3ef542
JW
229 * include/std/future (__async_result_of): Use __invoke_result instead
230 of result_of.
231
6791489e
JW
232 * include/std/any (any_cast): Use __remove_cvref_t.
233 * include/std/tuple (__make_tuple): Likewise.
234 * include/std/type_traits (__remove_cvref_t): Define.
235 (__result_of_memobj, __result_of_memfun): Use __remove_cvref_t.
236 [__cplusplus > 201703L] (remove_cvref, remove_cvref_t): Define.
237 * include/std/variant (__erased_hash): Use __remove_cvref_t.
238
27db01d8
FD
2392018-05-02 François Dumont <fdumont@gcc.gnu.org>
240
241 * include/bits/deque.tcc (deque<>::_M_assign_aux): Cast to void to
242 ensure overloaded comma not used.
243 * include/bits/list.tcc (list<>::_M_assign_dispatch): Likewise.
244 * include/bits/vector.tcc (vector<>::_M_assign_aux): Likewise.
245 * include/bits/stl_bvector.h (vector<bool>::_M_assign_aux): Likewise.
246 * testsuite/23_containers/deque/modifiers/assign/1.cc: New.
247 * testsuite/23_containers/list/modifiers/assign/1.cc: New.
248 * testsuite/23_containers/vector/bool/modifiers/assign/1.cc: New.
249 * testsuite/23_containers/vector/modifiers/assign/1.cc: New.
250
c6d42579
JW
2512018-05-02 Jonathan Wakely <jwakely@redhat.com>
252
85d0fad4
JW
253 PR libstdc++/68197
254 * include/bits/ios_base.h (ios_base::iword, ios_base::pword): Cast
255 indices to unsigned.
256 * src/c++11/ios.cc (ios_base::_M_grow_words): Treat negative indices
257 as failure. Refactor error handling.
258 * testsuite/27_io/ios_base/storage/68197.cc: New.
259
1b749ae9
JW
260 PR libstdc++/57997
261 PR libstdc++/83860
262 * include/bits/gslice_array.h (gslice_array): Define default
263 constructor as deleted, as per C++11 standard.
264 * include/bits/mask_array.h (mask_array): Likewise.
265 * include/bits/slice_array.h (slice_array): Likewise.
266 * include/bits/valarray_after.h (_GBase, _GClos, _IBase, _IClos): Move
267 to namespace __detail.
268 (_GBase::_M_expr, _IBase::_M_expr): Use _ValArrayRef for type of data
269 members.
270 * include/bits/valarray_before.h (_ValArrayRef): New helper for type
271 of data members in closure objects.
272 (_FunBase, _ValFunClos, _RefFunClos, _UnBase, _UnClos, _BinBase)
273 (_BinBase2, _BinBase1, _BinClos, _SBase, _SClos): Move to namespace
274 __detail.
275 (_FunBase::_M_expr, _UnBase::_M_expr, _BinBase::_M_expr1)
276 (_BinBase::_M_expr2, _BinBase2::_M_expr1, _BinBase1::_M_expr2)
277 (_SBase::_M_expr): Use _ValArrayRef for type of data members.
278 * include/std/valarray (_UnClos, _BinClos, _SClos, _GClos, _IClos)
279 (_ValFunClos, _RefFunClos): Move to namespace __detail and add
280 using-declarations to namespace std.
281 * testsuite/26_numerics/valarray/83860.cc: New.
282
59bcf900
JW
283 * testsuite/backward/strstream_move.cc: Remove duplicate function
284 call.
285
c6d42579
JW
286 PR libstdc++/69608
287 * include/backward/strstream (strstreambuf): Define move constructor
288 and move assignment operator.
289 (istrstream, ostrstream, strstream): Likewise.
290 * testsuite/backward/strstream_move.cc: New.
291
f421e442
TMQMF
2922018-05-01 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
293
294 PR libstdc++/84654
295 * acinclude.m4: Set ENABLE_FLOAT128 instead of _GLIBCXX_USE_FLOAT128.
296 * config.h.in: Remove references to _GLIBCXX_USE_FLOAT128.
297 * configure: Regenerate.
298 * include/Makefile.am: Replace the value of _GLIBCXX_USE_FLOAT128
299 based on ENABLE_FLOAT128.
300 * include/Makefile.in: Regenerate.
301 * include/bits/c++config: Define _GLIBCXX_USE_FLOAT128.
302 [!defined(__FLOAT128__) && !defined(__SIZEOF_FLOAT128__)]: Undefine
303 _GLIBCXX_USE_FLOAT128.
304
7b47ecf2
L
3052018-04-24 H.J. Lu <hongjiu.lu@intel.com>
306
307 * configure: Regenerated.
308
a0e1df88
JJ
3092018-04-19 Jakub Jelinek <jakub@redhat.com>
310
311 * configure: Regenerated.
312
05b14480
JW
3132018-04-18 Jonathan Wakely <jwakely@redhat.com>
314 Jakub Jelinek <jakub@redhat.com>
315
316 PR libstdc++/85442
317 * src/c++11/Makefile.am: Don't generate debuginfo again for
318 cxx11-ios_failure-lt.s and cxx11-ios_failure.s files.
319 * src/c++11/Makefile.in: Regenerate.
320
8cc8789f
JW
3212018-04-18 Jonathan Wakely <jwakely@redhat.com>
322
323 PR libstdc++/84442
324 * testsuite/30_threads/thread/cons/terminate.cc
325 [!_GLIBCXX_USE_C99_STDLIB] : Use _exit or std::exit instead of _Exit.
326
001ddaa8
DM
3272018-04-18 David Malcolm <dmalcolm@redhat.com>
328
329 PR jit/85384
330 * configure: Regenerate.
331
ef0e80d2
JW
3322018-04-16 Jonathan Wakely <jwakely@redhat.com>
333
334 * testsuite/experimental/filesystem/file_status/1.cc: Add
335 -DUSE_FILESYSTEM_TS to dg-options.
336 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
337 Likewise.
338 * testsuite/experimental/filesystem/iterators/pop.cc: Likewise.
339 * testsuite/experimental/filesystem/iterators/
340 recursive_directory_iterator.cc: Likewise.
341 * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
342 * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
343 * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
344 * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
345 * testsuite/experimental/filesystem/operations/create_directories.cc:
346 Likewise.
347 * testsuite/experimental/filesystem/operations/create_directory.cc:
348 Likewise.
349 * testsuite/experimental/filesystem/operations/create_symlink.cc:
350 Likewise.
351 * testsuite/experimental/filesystem/operations/current_path.cc:
352 Likewise.
353 * testsuite/experimental/filesystem/operations/equivalent.cc: Likewise.
354 * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
355 * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
356 * testsuite/experimental/filesystem/operations/is_empty.cc: Likewise.
357 * testsuite/experimental/filesystem/operations/last_write_time.cc:
358 Likewise.
359 * testsuite/experimental/filesystem/operations/permissions.cc:
360 Likewise.
361 * testsuite/experimental/filesystem/operations/read_symlink.cc:
362 Likewise.
363 * testsuite/experimental/filesystem/operations/remove.cc: Likewise.
364 * testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
365 * testsuite/experimental/filesystem/operations/status.cc: Likewise.
366 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
367 Likewise.
368 * testsuite/experimental/filesystem/path/append/path.cc: Likewise.
369 * testsuite/experimental/filesystem/path/assign/assign.cc: Likewise.
370 * testsuite/experimental/filesystem/path/assign/copy.cc: Likewise.
371 * testsuite/experimental/filesystem/path/compare/compare.cc: Likewise.
372 * testsuite/experimental/filesystem/path/compare/path.cc: Likewise.
373 * testsuite/experimental/filesystem/path/compare/strings.cc: Likewise.
374 * testsuite/experimental/filesystem/path/concat/path.cc: Likewise.
375 * testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
376 * testsuite/experimental/filesystem/path/construct/copy.cc: Likewise.
377 * testsuite/experimental/filesystem/path/construct/default.cc:
378 Likewise.
379 * testsuite/experimental/filesystem/path/construct/locale.cc: Likewise.
380 * testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
381 * testsuite/experimental/filesystem/path/construct/string_view.cc:
382 Likewise.
383 * testsuite/experimental/filesystem/path/decompose/extension.cc:
384 Likewise.
385 * testsuite/experimental/filesystem/path/decompose/filename.cc:
386 Likewise.
387 * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
388 Likewise.
389 * testsuite/experimental/filesystem/path/decompose/relative_path.cc:
390 Likewise.
391 * testsuite/experimental/filesystem/path/decompose/root_directory.cc:
392 Likewise.
393 * testsuite/experimental/filesystem/path/decompose/root_name.cc:
394 Likewise.
395 * testsuite/experimental/filesystem/path/decompose/root_path.cc:
396 Likewise.
397 * testsuite/experimental/filesystem/path/decompose/stem.cc: Likewise.
398 * testsuite/experimental/filesystem/path/generic/generic_string.cc:
399 Likewise.
400 * testsuite/experimental/filesystem/path/itr/traversal.cc: Likewise.
401 * testsuite/experimental/filesystem/path/modifiers/clear.cc: Likewise.
402 * testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
403 Likewise.
404 * testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
405 Likewise.
406 * testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
407 Likewise.
408 * testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
409 Likewise.
410 * testsuite/experimental/filesystem/path/modifiers/swap.cc: Likewise.
411 * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
412 * testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
413 Likewise.
414 * testsuite/experimental/filesystem/path/query/empty.cc: Likewise.
415 * testsuite/experimental/filesystem/path/query/has_extension.cc:
416 Likewise.
417 * testsuite/experimental/filesystem/path/query/has_filename.cc:
418 Likewise.
419 * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
420 Likewise.
421 * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
422 Likewise.
423 * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
424 Likewise.
425 * testsuite/experimental/filesystem/path/query/has_root_name.cc:
426 Likewise.
427 * testsuite/experimental/filesystem/path/query/has_root_path.cc:
428 Likewise.
429 * testsuite/experimental/filesystem/path/query/has_stem.cc: Likewise.
430 * testsuite/experimental/filesystem/path/query/is_relative.cc:
431 Likewise.
432
06258a7f
JW
4332018-04-13 Jonathan Wakely <jwakely@redhat.com>
434
272277dc
JW
435 * src/c++11/Makefile.am: Fix sed command.
436 * src/c++11/Makefile.in: Regenerate.
437
06258a7f
JW
438 * src/c++11/Makefile.am: Rewrite sed rule to be less fragile and to
439 handle mangled names starting with double underscores on darwin.
440 * src/c++11/Makefile.in: Regenerate.
441
ee3e8f43
JW
4422018-04-12 Jonathan Wakely <jwakely@redhat.com>
443
741346a2
JW
444 * src/c++11/Makefile.am: Fix comment.
445 * src/c++11/Makefile.in: Regenerate.
446 * src/c++11/cxx11-ios_failure.cc: Fix comment.
447 * src/c++98/ios_failure.cc: Likewise.
448
ee3e8f43
JW
449 * src/c++11/ios.cc: Remove redundant macro definition.
450
52556a87
JW
4512018-04-11 Jonathan Wakely <jwakely@redhat.com>
452
453 * doc/xml/manual/abi.xml: Document header locations in recent
454 releases.
455 * doc/xml/manual/evolution.xml: Add API changes since GCC 5.
456 * doc/xml/manual/spine.xml: Update copyright years.
457 * doc/xml/manual/strings.xml: Adjust tolower example to avoid
458 undefined behaviour.
459 * doc/xml/manual/test.xml: Update outdated notes on VERIFY in tests.
460 * doc/html/*: Regenerate.
461
5f302518
JW
4622018-04-10 Jonathan Wakely <jwakely@redhat.com>
463
25949ee3
JW
464 * doc/xml/faq.xml: Update links to archived copy of SGI STL docs.
465 * doc/xml/manual/backwards_compatibility.xml: Likewise.
466 * doc/xml/manual/containers.xml: Likewise.
467 * doc/xml/manual/debug_mode.xml: Likewise.
468 * doc/xml/manual/extensions.xml: Likewise.
469 * doc/xml/manual/policy_data_structures_biblio.xml: Likewise.
470 * doc/xml/manual/using.xml: Likewise.
471 * doc/xml/manual/utilities.xml: Likewise.
472
5f302518
JW
473 PR libstdc++/85222
474 * src/c++11/Makefile.am [ENABLE_DUAL_ABI]: Add special rules for
475 cxx11-ios_failure.cc to rewrite type info for __ios_failure.
476 * src/c++11/Makefile.in: Regenerate.
477 * src/c++11/cxx11-ios_failure.cc (__ios_failure, __iosfail_type_info):
478 New types.
479 [_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
480 * src/c++11/ios.cc (__throw_ios_failure): Remove definition.
481 * src/c++98/ios_failure.cc (__construct_ios_failure)
482 (__destroy_ios_failure, is_ios_failure_handler): New functions.
483 [!_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
484 * testsuite/27_io/ios_base/failure/dual_abi.cc: New.
485 * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Revert changes to
486 handler types, to always catch std::ios_base::failure.
487 * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
488 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
489 exceptions_failbit.cc: Likewise.
490 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
491 exceptions_failbit.cc: Likewise.
492 * testsuite/27_io/basic_istream/extractors_other/char/
493 exceptions_null.cc: Likewise.
494 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
495 exceptions_null.cc: Likewise.
496 * testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
497 * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
498 * testsuite/27_io/basic_ostream/inserters_other/char/
499 exceptions_null.cc: Likewise.
500 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
501 exceptions_null.cc: Likewise.
502 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
503
970d3d90
JW
5042018-04-05 Jonathan Wakely <jwakely@redhat.com>
505
506 * include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify
507 __get calls to avoid ADL and avoid ambiguity due to Clang bug.
508
c73847e7
JW
5092018-04-03 Jonathan Wakely <jwakely@redhat.com>
510
511 PR libstdc++/85183
512 * include/std/variant (_Move_assign_base::operator=): Fix incorrect
513 value categories.
514 * testsuite/20_util/variant/85183.cc: New.
515
aafaa325
JW
5162018-03-26 Jonathan Wakely <jwakely@redhat.com>
517
518 * include/std/variant (__get): Qualify calls to avoid ADL.
519 (__select_index): Adjust whitespace.
520 (variant): Add using-declaration to workaround Clang bug.
521
7c69a7d9
JW
5222018-03-22 Jonathan Wakely <jwakely@redhat.com>
523
524 PR libstdc++/85040
525 * include/bits/stl_function.h (greater::__not_overloaded)
526 (less::__not_overloaded, greater_equal::__not_overloaded)
527 (less_equal::__not_overloaded): Fix ambiguous specializations.
528 * testsuite/20_util/function_objects/comparisons_pointer.cc: Add
970d3d90 529 tests for type with overloaded operators.
7c69a7d9 530
83872062
RO
5312018-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
532
533 PR libstdc++/77691
534 * testsuite/experimental/memory_resource/resource_adaptor.cc:
535 xfail execution on 32-bit Solaris/x86.
536
5a0729f5
JW
5372018-03-21 Jonathan Wakely <jwakely@redhat.com>
538
539 * testsuite/20_util/function_objects/comparisons_pointer.cc: Use
540 VERIFY instead of assert.
541 * testsuite/20_util/hash/84998.cc: New test.
542 * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: New
543 copy of test adjusted for Debug Mode.
544 * testsuite/23_containers/vector/cons/destructible_neg.cc: Do not run
545 test in Debug Mode.
546
5dfb5e5b
FD
5472018-03-20 François Dumont <fdumont@gcc.gnu.org>
548
549 PR libstdc++/84998
550 * include/bits/stl_bvector.h: Fix std::hash friend declaration.
551 * include/std/bitset: Likewise.
552 * include/bits/stl_map.h (std::map<>): Fix _Rb_tree_merge_helper friend
553 declaration.
554 * include/bits/stl_multimap.h (std::multimap<>): Likewise.
555 * include/bits/stl_multiset.h (std::multiset<>): Likewise.
556 * include/bits/stl_set.h (std::set<>): Likewise.
557 * include/bits/unordered_map.h (std::unordered_map<>): Fix
558 _Hash_merge_helper friend declaration.
559 (std::unordered_multimap<>): Likewise.
560 * include/bits/unordered_set.h (std::unordered_set<>): Likewise.
561 (std::unordered_multiset<>): Likewise.
562
1de51fbc
GP
5632018-03-19 Gerald Pfeifer <gerald@pfeifer.com>
564
8c00b6a4
GP
565 * doc/xml/api.xml: www.fsf.org has moved to https. Also omit
566 trailing slash for domain level link.
567 * doc/xml/faq.xml: Ditto.
568 * doc/xml/manual/appendix_free.xml (software): Ditto.
569 * doc/xml/manual/intro.xml: Ditto.
570 * doc/xml/manual/spine.xml: Ditto.
571 * doc/xml/spine.xml: Ditto.
572
5dfb5e5b
FD
5732018-03-19 Gerald Pfeifer <gerald@pfeifer.com>
574
1de51fbc
GP
575 * doc/xml/manual/documentation_hacking.xml: Adjust link to
576 docbook.org.
577
0fb9dc36
JW
5782018-03-17 Jonathan Wakely <jwakely@redhat.com>
579
580 * testsuite/20_util/function_objects/comparisons_pointer.cc: Adjust
581 to compile as C++98.
582
0b3ec8f4
JW
5832018-03-14 Jonathan Wakely <jwakely@redhat.com>
584
585 PR libstdc++/78420
586 * include/bits/stl_function.h (greater<_Tp*>, less<_Tp*>)
587 (greater_equal<_Tp*>, less_equal<_Tp>*): Add partial specializations
588 to ensure total order for pointers.
589 (greater<void>, less<void>, greater_equal<void>, less_equal<void>):
590 Add operator() overloads for pointer arguments and make generic
591 overloads dispatch to new _S_cmp functions when comparisons would
592 use built-in operators for pointers.
593 * testsuite/20_util/function_objects/comparisons_pointer.cc: New.
594
97ca95ac
JW
5952018-03-12 Jonathan Wakely <jwakely@redhat.com>
596
597 PR libstdc++/84773
598 PR libstdc++/83662
599 * crossconfig.m4: Check for aligned_alloc etc. on freebsd and mingw32.
600 * configure: Regenerate.
601 * include/c_global/cstdlib [_GLIBCXX_HAVE_ALIGNED_ALLOC]
602 (aligned_alloc): Add using-declaration.
603 * testsuite/18_support/aligned_alloc/aligned_alloc.cc: New test.
604
5da6b013
FD
6052018-03-09 François Dumont <fdumont@gcc.gnu.org>
606
607 * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
608 Fix std::_Fwd_list_iterator and std::_Fwd_list_const_iterator printers
609 registration.
610
311735db
JW
6112018-03-09 Jonathan Wakely <jwakely@redhat.com>
612
5dbbf899
JW
613 PR libstdc++/84769
614 * include/std/variant (get<_Tp, _Types...>, get_if<_Tp, _Types...>):
615 Qualify calls to get<_Np, Types...> and get_if<_Np, _Types...>.
616
311735db
JW
617 src/filesystem/ops.cc (create_dir): Pass error_code to is_directory.
618 src/filesystem/std-ops.cc (create_dir): Likewise.
619
fe6bd21a
FD
6202018-03-08 François Dumont <fdumont@gcc.gnu.org>
621
622 * python/libstdcxx/v6/printers.py (NodeIteratorPrinter): New.
623 (StdListIteratorPrinter): Inherit from latter.
624 (StdFwdListIteratorPrinter): New, inherit from latter.
625 (StdDebugIteratorPrinter.to_string): Use non-debug iterator printer
626 when iterator has no associated container.
627 (build_libstdcxx_dictionary): Add __gnu_cxx::_Fwd_list_iterator and
628 __gnu_cxx::_Fwd_list_const_iterator printers. Remove __norm namespace
629 registrations.
630 * testsuite/libstdc++-prettyprinters/debug.cc: Adapt.
631 * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Adapt.
632
447346e4
VV
6332018-03-06 Ville Voutilainen <ville.voutilainen@gmail.com>
634
635 PR libstdc++/84601
636 * include/std/optional (_Optional_payload): Split into multiple
637 specializations that can handle different cases of trivial or
638 non-trivial assignment operators.
639 * testsuite/20_util/optional/84601.cc: New.
640 * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
641
2f03003d
JW
6422018-03-02 Jonathan Wakely <jwakely@redhat.com>
643
644 PR libstdc++/84671
645 * include/bits/parse_numbers.h (_Number_help): Add partial
646 specialization to handle digit separators. Adjust partial
647 specialization for recursion temrination to require _Pow == 1ULL.
648 * testsuite/20_util/duration/literals/84671.cc: New
649
23c3a059
VV
6502018-02-27 Ville Voutilainen <ville.voutilainen@gmail.com>
651
652 Implement the missing bits of LWG 2769
653 * include/std/any (any_cast(const any&)): Add static_assert.
654 (any_cast(any&)): Likewise.
655 (any_cast(any&&)): Likewise, and remove the handling
656 for copyable-but-not-movable type.
657 * testsuite/20_util/any/misc/any_cast.cc: Adjust.
658 * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise, and
659 add new tests.
660
cc535146
JW
6612018-02-23 Jonathan Wakely <jwakely@redhat.com>
662
663 PR libstdc++/84532
664 * include/std/thread (thread::__make_invoker): Construct tuple
665 directly instead of using make_tuple.
666 * testsuite/30_threads/async/84532.cc: New.
667 * testsuite/30_threads/thread/84532.cc: New.
668
549b1796
FD
6692018-02-20 François Dumont <fdumont@gcc.gnu.org>
670
671 * include/ext/aligned_buffer.h [_GLIBCXX_INLINE_VERSION]
672 (template<> __aligned_buffer): Define as __aligned_membuf alias.
673
14e335ed
IT
6742018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
675
676 PR target/84148
677 * configure: Regenerate.
678
51f174c0
JW
6792018-02-15 Jonathan Wakely <jwakely@redhat.com>
680
681 PR libstdc++/81797
682 * configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
683 * configure: Regenerate.
684 * include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
685 defined.
686 * include/Makefile.in: Regenerate.
687
73ebece3
JW
6882018-01-29 Jonathan Wakely <jwakely@redhat.com>
689
50ea03f4
JW
690 PR libstdc++/83833
691 * testsuite/26_numerics/random/chi_squared_distribution/83833.cc:
692 Add -ffloat-store to options for m68k and ia32.
693
b53e4e1c
JW
694 * doc/xml/faq.xml: Update copyright years.
695 * doc/html/*: Regenerate.
696
73ebece3
JW
697 PR libstdc++/83658
698 * include/std/any (any::__do_emplace): Only set _M_manager after
699 constructing the contained object.
700 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust dg-error line.
701 * testsuite/20_util/any/modifiers/83658.cc: New test.
702
58078de7
JW
7032018-01-25 Jonathan Wakely <jwakely@redhat.com>
704
705 PR libstdc++/81076
706 * include/c_global/cstddef (__byte_operand): Define primary template.
707 * testsuite/18_support/byte/81076.cc: New test.
708
a46c4287
CL
7092018-01-19 Christophe Lyon <christophe.lyon@linaro.org>
710
711 * testsuite/ext/special_functions/airy_ai/check_nan.cc: Fix
58078de7 712 dg-options and dg-add-options order.
a46c4287
CL
713 * testsuite/ext/special_functions/airy_bi/check_nan.cc: Likewise.
714 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc:
715 Likewise.
716 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
717 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
718 Likewise.
719 * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
720 Likewise.
721 * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
722 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc:
723 Likewise.
724 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc:
725 Likewise.
726 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc:
727 Likewise.
728 * testsuite/special_functions/06_comp_ellint_3/pr66689.cc:
729 Likewise.
730 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc:
731 Likewise.
732 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc:
733 Likewise.
734 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc:
735 Likewise.
736 * testsuite/special_functions/10_cyl_neumann/check_nan.cc:
737 Likewise.
738 * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
739 * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
740 * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
741 * testsuite/special_functions/13_ellint_3/pr66689.cc: Likewise.
742 * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
743 * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
744 * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
745 * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
746 * testsuite/special_functions/18_riemann_zeta/check_nan.cc:
747 Likewise.
748 * testsuite/special_functions/19_sph_bessel/check_nan.cc:
749 Likewise.
750 * testsuite/special_functions/20_sph_legendre/check_nan.cc:
751 Likewise.
752 * testsuite/special_functions/21_sph_neumann/check_nan.cc:
753 Likewise.
754
dac867c9
UB
7552018-01-18 Uros Bizjak <ubizjak@gmail.com>
756
757 * configure.ac (AC_CHECK_HEADERS): Add linux/types.h. Conditionally
758 include linux/types.h when checking linux/random.h header.
759 * config.h.in: Regenerate.
760 * configure: Ditto.
761 * src/c++11/random.cc: Conditionally include linux/types.h.
762
229433c9
EB
7632018-01-16 Eric Botcazou <ebotcazou@adacore.com>
764
765 * testsuite/17_intro/names.cc: Undefine 'y' on SPARC/Linux.
766
cce6078d
JW
7672018-01-16 Jonathan Wakely <jwakely@redhat.com>
768
769 PR libstdc++/83834
770 * config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace std::c[a-g]* wildcard
771 pattern with exact match for std::cerr.
772
b0e63d94
JW
7732018-01-15 Jonathan Wakely <jwakely@redhat.com>
774
8b3085e7
JW
775 PR libstdc++/83833
776 * include/bits/random.h (chi_squared_distribution::param): Update
777 gamma distribution parameter.
778 * testsuite/26_numerics/random/chi_squared_distribution/83833.cc: New
779 test.
780
b0e63d94
JW
781 PR libstdc++/83830
782 * include/std/type_traits (has_unique_object_representations_v): Add
783 variable template.
784 * testsuite/20_util/has_unique_object_representations/value.cc: Check
785 variable template.
786
c89f2d24
VV
7872018-01-15 Ville Voutilainen <ville.voutilainen@gmail.com>
788
789 Make optional conditionally
790 trivially_{copy,move}_{constructible,assignable}
791 * include/std/optional (_Optional_payload): Fix the comment in
792 the class head and turn into a primary and one specialization.
793 (_Optional_payload::_M_engaged): Strike the NSDMI.
794 (_Optional_payload<_Tp, false>::operator=(const _Optional_payload&)):
795 New.
796 (_Optional_payload<_Tp, false>::operator=(_Optional_payload&&)):
797 Likewise.
798 (_Optional_payload<_Tp, false>::_M_get): Likewise.
799 (_Optional_payload<_Tp, false>::_M_reset): Likewise.
800 (_Optional_base_impl): Likewise.
801 (_Optional_base): Turn into a primary and three specializations.
802 (optional(nullopt)): Change the base init.
803 * testsuite/20_util/optional/assignment/8.cc: New.
804 * testsuite/20_util/optional/cons/trivial.cc: Likewise.
805 * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
806
bab0a26d
JW
8072018-01-15 Jonathan Wakely <jwakely@redhat.com>
808
809 PR libstdc++/80276
810 * python/libstdcxx/v6/printers.py (strip_inline_namespaces): New.
811 (get_template_arg_list): New.
812 (StdVariantPrinter._template_args): Remove, use get_template_arg_list
813 instead.
814 (TemplateTypePrinter): Rewrite to work with gdb.Type objects instead
815 of strings and regular expressions.
816 (add_one_template_type_printer): Adapt to new TemplateTypePrinter.
817 (FilteringTypePrinter): Add docstring. Match using startswith. Use
818 strip_inline_namespaces instead of strip_versioned_namespace.
819 (add_one_type_printer): Prepend namespace to match argument.
820 (register_type_printers): Add type printers for char16_t and char32_t
821 string types and for types using cxx11 ABI. Update calls to
822 add_one_template_type_printer to provide default argument dicts.
823 * testsuite/libstdc++-prettyprinters/80276.cc: New test.
824 * testsuite/libstdc++-prettyprinters/whatis.cc: Remove tests for
825 basic_string<unsigned char> and basic_string<signed char>.
826 * testsuite/libstdc++-prettyprinters/whatis2.cc: Duplicate whatis.cc
827 to test local variables, without overriding _GLIBCXX_USE_CXX11_ABI.
828
a61bac1e
AS
8292018-01-14 Andreas Schwab <schwab@linux-m68k.org>
830
831 PR libstdc++/81092
832 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
833
8532713f
TS
8342018-01-13 Tim Shen <timshen@google.com>
835
836 PR libstdc++/83601
837 * include/bits/regex.tcc (regex_replace): Fix escaping in sed.
838 * testsuite/28_regex/algorithms/regex_replace/char/pr83601.cc: Tests.
839 * testsuite/28_regex/algorithms/regex_replace/wchar_t/pr83601.cc: Tests.
840
c969e34e
RO
8412018-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
842
843 PR libstdc++/64054
844 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
845 Remove dg-xfail-run-if.
846
75ce74bb
FD
8472018-01-10 François Dumont <fdumont@gcc.gnu.org>
848
849 * include/bits/forward_list.h
850 (_Fwd_list_node_base(_Fwd_list_node_base&&)): New.
851 (_Fwd_list_node_base& operator=(_Fwd_list_node_base&&)): New.
852 (_Fwd_list_node_base(const _Fwd_list_node_base&)): Explicit delete.
853 (_Fwd_list_node_base& operator=(const _Fwd_list_node_base&)): Likewise.
854 (_Fwd_list_impl()): Add noexcept qualification.
855 (_Fwd_list_impl(const _Node_alloc_type&)): Delete.
856 (_Fwd_list_impl(_Fwd_list_impl&&)): New, default.
857 (_Fwd_list_impl(_Fwd_list_impl&&, _Node_alloc_type&&)): New.
858 (_Fwd_list_base()): Default.
859 (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&, true_type)): New.
860 (_Fwd_list_base(_Fwd_list_base&&)): Default.
861 (forward_list<>()): Default.
862 (forward_list<>(forward_list&&)): Default.
863 (forward_list(forward_list&&, _Node_alloc_type&&, false_type)): New.
864 (forward_list(forward_list&&, _Node_alloc_type&&, true_type)): New.
865 (forward_list(forward_list&&, const _Alloc&)): Adapt to use latters.
866 * include/bits/forward_list.tcc
867 (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&)): Adapt to use
868 _M_impl._M_head move assignment.
869 (forward_list<>::merge(forward_list<>&&, _Comp)): Likewise.
870 * testsuite/23_containers/forward_list/allocator/default_init.cc: New.
871
8273aa77
JW
8722018-01-09 Jonathan Wakely <jwakely@redhat.com>
873
874 PR libstdc++/80276
875 * python/libstdcxx/v6/printers.py (SharedPointerPrinter)
876 (UniquePointerPrinter): Print correct template argument, not type of
877 the pointer.
878 (TemplateTypePrinter._recognizer.recognize): Handle failure to lookup
879 a type.
880 * testsuite/libstdc++-prettyprinters/cxx11.cc: Test unique_ptr of
881 array type.
882 * testsuite/libstdc++-prettyprinters/cxx17.cc: Test shared_ptr and
883 weak_ptr of array types.
884
0f146257
FD
8852018-01-09 François Dumont <fdumont@gcc.gnu.org>
886
887 PR libstdc++/83709
888 * include/bits/hashtable_policy.h
889 (__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
890 __first != __last.
891 (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
892 (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
893 Add false_type parameter.
894 (_Insert_base::insert): Adapt.
895 * include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
896 Adapt.
897 (_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
898 Add __n_elt parameter, defaulted to 1.
899 (_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
900 policy _M_need_rehash.
901 (_Hashtable::_M_merge_unique): Pass target number of elements to add to
902 produce only 1 rehash if necessary.
903 * testsuite/23_containers/unordered_map/insert/83709.cc: New.
904 * testsuite/23_containers/unordered_set/insert/83709.cc: New.
905
ed99ae13
JO
9062018-01-09 Juraj Oršulić <juraj.orsulic@fer.hr>
907 Jonathan Wakely <jwakely@redhat.com>
d2dfcf82
JO
908
909 PR libstdc++/59253 (partial)
910 * python/libstdcxx/v6/printers.py (SmartPtrIterator): Common iterator
911 type for pointer stored by shared_ptr, weak_ptr and unique_ptr.
912 (SharedPointerPrinter, UniquePointerPrinter): Treat stored values as
913 children.
914 * testsuite/libstdc++-prettyprinters/cxx11.cc: Update expected output
915 of unique_ptr printer.
916 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Update expected
917 output of shared_ptr printer.
918
388058dd
JW
9192018-01-05 Jonathan Wakely <jwakely@redhat.com>
920
4ca07db0
JW
921 PR libstdc++/83626
922 * src/filesystem/ops.cc (remove(const path&, error_code&)): Remove
923 unnecessary symlink_status call.
924 (remove_all(const path&, error_code&)): Use filesystem::remove.
925 * src/filesystem/std-ops.cc: Likewise.
926
2526c53a
JW
927 PR libstdc++/83279
928 * src/filesystem/std-ops.cc (do_copy_file): Use non-null offset with
929 sendfile.
930
388058dd
JW
931 PR libstdc++/83626
932 * src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
933 report an error for ENOENT.
934 (remove_all(const path&)): Fix type of result variable.
935 (remove_all(const path&, error_code&)): Use non-throwing increment
936 for directory iterator. Call POSIX remove directly to avoid redundant
937 calls to symlink_status. Do not report errors for ENOENT.
938 * src/filesystem/std-ops.cc: Likewise.
939 * testsuite/27_io/filesystem/operations/remove_all.cc: Test throwing
940 overload.
941 * testsuite/experimental/filesystem/operations/remove_all.cc:
942 Likewise.
943
32489ab5
JW
9442018-01-04 Jonathan Wakely <jwakely@redhat.com>
945
994844d3
JW
946 PR libstdc++/83626
947 * src/filesystem/ops.cc (remove(const path&, error_code&))): Remove
948 redundant call to ec.clear().
949 (remove_all(const path&, error_code&))): Do not return an error for
950 non-existent paths.
951 * src/filesystem/std-ops.cc: Likewise.
952 * testsuite/27_io/filesystem/operations/remove.cc: New test.
953 * testsuite/27_io/filesystem/operations/remove_all.cc: Fix expected
954 results for non-existent paths.
955 * testsuite/experimental/filesystem/operations/remove.cc: New test.
956 * testsuite/experimental/filesystem/operations/remove_all.cc: Fix
957 expected results for non-existent paths.
958
f7373fce
JW
959 * include/bits/fs_ops.h (exists(const path&, error_code&))): Only
960 check status_known once.
961 * include/experimental/bits/fs_ops.h: Likewise.
962
32489ab5
JW
963 PR libstdc++/83607
964 * include/std/functional (__is_byte_like): New trait.
965 (__is_std_equal_to): Remove.
966 (__boyer_moore_base_t): Use __is_byte_like instead of
967 __is_std_equal_to.
968 * include/experimental/functional (__is_std_equal_to): Remove.
969 (__boyer_moore_base_t): Use __is_byte_like instead of
970 __is_std_equal_to.
971 * testsuite/20_util/function_objects/83607.cc: New test.
972
8bdbeed1
VV
9732018-01-03 Ville Voutilainen <ville.voutilainen@gmail.com>
974
975 Protect optional's deduction guide with the feature macro
976 * include/std/optional: Use the feature macro.
977
85ec4feb 9782018-01-03 Jakub Jelinek <jakub@redhat.com>
5624e564
JJ
979
980 Update copyright years.
b4df5e92 981\f
85ec4feb 982Copyright (C) 2018 Free Software Foundation, Inc.
b4df5e92
JW
983
984Copying and distribution of this file, with or without modification,
985are permitted in any medium without royalty provided the copyright
986notice and this notice are preserved.