Daily bump.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob1225826ef91eba4226d5f9f6a0ce0749c6f8337c
1 2018-05-15  Jonathan Wakely  <jwakely@redhat.com>
3         PR libstdc++/83891
4         * include/bits/fs_path.h (path::is_absolute()): Use same definition
5         for all operating systems.
6         * include/experimental/bits/fs_path.h (path::is_absolute()): Likewise.
7         * testsuite/27_io/filesystem/path/query/is_absolute.cc: New.
8         * testsuite/27_io/filesystem/path/query/is_relative.cc: Fix comment.
9         * testsuite/experimental/filesystem/path/query/is_absolute.cc: New.
11         * testsuite/27_io/filesystem/path/decompose/extension.cc: Remove
12         unused <vector> header.
13         * testsuite/27_io/filesystem/path/query/empty.cc: Likewise.
14         * testsuite/27_io/filesystem/path/query/has_extension.cc: Likewise.
15         * testsuite/27_io/filesystem/path/query/has_filename.cc: Likewise.
16         * testsuite/27_io/filesystem/path/query/has_parent_path.cc: Likewise.
17         * testsuite/27_io/filesystem/path/query/has_relative_path.cc:
18         Likewise.
19         * testsuite/27_io/filesystem/path/query/has_root_directory.cc:
20         Likewise.
21         * testsuite/27_io/filesystem/path/query/has_root_name.cc: Likewise.
22         * testsuite/27_io/filesystem/path/query/has_root_path.cc: Likewise.
23         * testsuite/27_io/filesystem/path/query/has_stem.cc: Likewise.
24         * testsuite/27_io/filesystem/path/query/is_relative.cc: Likewise.
25         * testsuite/experimental/filesystem/path/decompose/extension.cc:
26         Likewise.
27         * testsuite/experimental/filesystem/path/query/empty.cc: Likewise.
28         * testsuite/experimental/filesystem/path/query/has_extension.cc:
29         Likewise.
30         * testsuite/experimental/filesystem/path/query/has_filename.cc:
31         Likewise.
32         * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
33         Likewise.
34         * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
35         Likewise.
36         * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
37         Likewise.
38         * testsuite/experimental/filesystem/path/query/has_root_name.cc:
39         Likewise.
40         * testsuite/experimental/filesystem/path/query/has_root_path.cc:
41         Likewise.
42         * testsuite/experimental/filesystem/path/query/has_stem.cc: Likewise.
43         * testsuite/experimental/filesystem/path/query/is_relative.cc:
44         Likewise.
46         PR libstdc++/84159
47         * include/bits/fs_path.h (path::operator/=, path::append): Construct
48         temporary path before calling _M_append.
49         (path::_M_append): Change parameter to path and implement C++17
50         semantics.
51         * testsuite/27_io/filesystem/path/append/path.cc: Add helper function
52         and more examples from the standard.
53         * testsuite/27_io/filesystem/path/append/source.cc: New.
54         * testsuite/27_io/filesystem/path/decompose/filename.cc: Add comment.
55         * testsuite/27_io/filesystem/path/nonmember/append.cc: New.
57 2018-05-14  Jonathan Wakely  <jwakely@redhat.com>
59         PR libstdc++/67554
60         * include/bits/valarray_array.h (_Array_copy_ctor<_Tp, true>)
61         (_Array_copier<_Tp, true>): Do not pass null pointers to memcpy.
63         PR libstdc++/82966
64         * include/bits/node_handle.h (_Node_handle_common::_M_swap): Use value
65         instead of type.
66         * testsuite/23_containers/set/modifiers/node_swap.cc: New.
68 2018-05-10  Jonathan Wakely  <jwakely@redhat.com>
70         * doc/xml/faq.xml: Link to C++17 status. Add note to outdated answer.
71         * doc/xml/manual/debug_mode.xml: Add array and forward_list to list
72         of C++11 containers with Debug Mode support.
73         * doc/xml/manual/using.xml: Document that the C++17 Filesystem
74         implementation also needs -lstdc++fs. Document Dual ABI for
75         ios_base::failure.
76         * doc/html/*: Regenerate.
78 2018-05-07  Edward Smith-Rowland  <3dw4rd@verizon.net>
80         Backport from mainline
81         2018-05-07  Edward Smith-Rowland  <3dw4rd@verizon.net>
83         Moar PR libstdc++/80506
84         * include/bits/random.tcc (gamma_distribution::__generate_impl()):
85         Fix magic number used in loop condition.
87 2018-05-04  Jonathan Wakely  <jwakely@redhat.com>
89         PR libstdc++/85642 fix is_nothrow_default_constructible<optional<T>>
90         * include/std/optional (_Optional_payload): Add noexcept to default
91         constructor. Re-indent.
92         (_Optional_payload<_Tp, true, true, true>): Likewise. Add noexcept to
93         constructor for copying disengaged payloads.
94         (_Optional_payload<_Tp, true, false, true>): Likewise.
95         (_Optional_payload<_Tp, true, true, false>): Likewise.
96         (_Optional_payload<_Tp, true, false, false>): Likewise.
97         * testsuite/20_util/optional/cons/85642.cc: New.
98         * testsuite/20_util/optional/cons/value_neg.cc: Adjust dg-error lines.
100 2018-05-03  Jonathan Wakely  <jwakely@redhat.com>
102         PR libstdc++/84769
103         * include/std/variant (visit): Qualify std::get call.
105 2018-05-03  Jonathan Wakely  <jwakely@redhat.com>
107         PR libstdc++/85632 use uintmax_t for arithmetic
108         * src/filesystem/ops.cc (experimental::filesystem::space): Perform
109         arithmetic in result type.
110         * src/filesystem/std-ops.cc (filesystem::space): Likewise.
111         * testsuite/27_io/filesystem/operations/space.cc: Check total capacity
112         is greater than free space.
113         * testsuite/experimental/filesystem/operations/space.cc: New.
115 2018-05-02  Release Manager
117         * GCC 8.1.0 released.
119 2018-04-24  H.J. Lu  <hongjiu.lu@intel.com>
121         * configure: Regenerated.
123 2018-04-19  Jakub Jelinek  <jakub@redhat.com>
125         * configure: Regenerated.
127 2018-04-18  Jonathan Wakely  <jwakely@redhat.com>
128             Jakub Jelinek  <jakub@redhat.com>
130         PR libstdc++/85442
131         * src/c++11/Makefile.am: Don't generate debuginfo again for
132         cxx11-ios_failure-lt.s and cxx11-ios_failure.s files.
133         * src/c++11/Makefile.in: Regenerate.
135 2018-04-18  Jonathan Wakely  <jwakely@redhat.com>
137         PR libstdc++/84442
138         * testsuite/30_threads/thread/cons/terminate.cc
139         [!_GLIBCXX_USE_C99_STDLIB] : Use _exit or std::exit instead of _Exit.
141 2018-04-18  David Malcolm  <dmalcolm@redhat.com>
143         PR jit/85384
144         * configure: Regenerate.
146 2018-04-16  Jonathan Wakely  <jwakely@redhat.com>
148         * testsuite/experimental/filesystem/file_status/1.cc: Add
149         -DUSE_FILESYSTEM_TS to dg-options.
150         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
151         Likewise.
152         * testsuite/experimental/filesystem/iterators/pop.cc: Likewise.
153         * testsuite/experimental/filesystem/iterators/
154         recursive_directory_iterator.cc: Likewise.
155         * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
156         * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
157         * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
158         * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
159         * testsuite/experimental/filesystem/operations/create_directories.cc:
160         Likewise.
161         * testsuite/experimental/filesystem/operations/create_directory.cc:
162         Likewise.
163         * testsuite/experimental/filesystem/operations/create_symlink.cc:
164         Likewise.
165         * testsuite/experimental/filesystem/operations/current_path.cc:
166         Likewise.
167         * testsuite/experimental/filesystem/operations/equivalent.cc: Likewise.
168         * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
169         * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
170         * testsuite/experimental/filesystem/operations/is_empty.cc: Likewise.
171         * testsuite/experimental/filesystem/operations/last_write_time.cc:
172         Likewise.
173         * testsuite/experimental/filesystem/operations/permissions.cc:
174         Likewise.
175         * testsuite/experimental/filesystem/operations/read_symlink.cc:
176         Likewise.
177         * testsuite/experimental/filesystem/operations/remove.cc: Likewise.
178         * testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
179         * testsuite/experimental/filesystem/operations/status.cc: Likewise.
180         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
181         Likewise.
182         * testsuite/experimental/filesystem/path/append/path.cc: Likewise.
183         * testsuite/experimental/filesystem/path/assign/assign.cc: Likewise.
184         * testsuite/experimental/filesystem/path/assign/copy.cc: Likewise.
185         * testsuite/experimental/filesystem/path/compare/compare.cc: Likewise.
186         * testsuite/experimental/filesystem/path/compare/path.cc: Likewise.
187         * testsuite/experimental/filesystem/path/compare/strings.cc: Likewise.
188         * testsuite/experimental/filesystem/path/concat/path.cc: Likewise.
189         * testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
190         * testsuite/experimental/filesystem/path/construct/copy.cc: Likewise.
191         * testsuite/experimental/filesystem/path/construct/default.cc:
192         Likewise.
193         * testsuite/experimental/filesystem/path/construct/locale.cc: Likewise.
194         * testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
195         * testsuite/experimental/filesystem/path/construct/string_view.cc:
196         Likewise.
197         * testsuite/experimental/filesystem/path/decompose/extension.cc:
198         Likewise.
199         * testsuite/experimental/filesystem/path/decompose/filename.cc:
200         Likewise.
201         * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
202         Likewise.
203         * testsuite/experimental/filesystem/path/decompose/relative_path.cc:
204         Likewise.
205         * testsuite/experimental/filesystem/path/decompose/root_directory.cc:
206         Likewise.
207         * testsuite/experimental/filesystem/path/decompose/root_name.cc:
208         Likewise.
209         * testsuite/experimental/filesystem/path/decompose/root_path.cc:
210         Likewise.
211         * testsuite/experimental/filesystem/path/decompose/stem.cc: Likewise.
212         * testsuite/experimental/filesystem/path/generic/generic_string.cc:
213         Likewise.
214         * testsuite/experimental/filesystem/path/itr/traversal.cc: Likewise.
215         * testsuite/experimental/filesystem/path/modifiers/clear.cc: Likewise.
216         * testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
217         Likewise.
218         * testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
219         Likewise.
220         * testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
221         Likewise.
222         * testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
223         Likewise.
224         * testsuite/experimental/filesystem/path/modifiers/swap.cc: Likewise.
225         * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
226         * testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
227         Likewise.
228         * testsuite/experimental/filesystem/path/query/empty.cc: Likewise.
229         * testsuite/experimental/filesystem/path/query/has_extension.cc:
230         Likewise.
231         * testsuite/experimental/filesystem/path/query/has_filename.cc:
232         Likewise.
233         * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
234         Likewise.
235         * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
236         Likewise.
237         * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
238         Likewise.
239         * testsuite/experimental/filesystem/path/query/has_root_name.cc:
240         Likewise.
241         * testsuite/experimental/filesystem/path/query/has_root_path.cc:
242         Likewise.
243         * testsuite/experimental/filesystem/path/query/has_stem.cc: Likewise.
244         * testsuite/experimental/filesystem/path/query/is_relative.cc:
245         Likewise.
247 2018-04-13  Jonathan Wakely  <jwakely@redhat.com>
249         * src/c++11/Makefile.am: Fix sed command.
250         * src/c++11/Makefile.in: Regenerate.
252         * src/c++11/Makefile.am: Rewrite sed rule to be less fragile and to
253         handle mangled names starting with double underscores on darwin.
254         * src/c++11/Makefile.in: Regenerate.
256 2018-04-12  Jonathan Wakely  <jwakely@redhat.com>
258         * src/c++11/Makefile.am: Fix comment.
259         * src/c++11/Makefile.in: Regenerate.
260         * src/c++11/cxx11-ios_failure.cc: Fix comment.
261         * src/c++98/ios_failure.cc: Likewise.
263         * src/c++11/ios.cc: Remove redundant macro definition.
265 2018-04-11  Jonathan Wakely  <jwakely@redhat.com>
267         * doc/xml/manual/abi.xml: Document header locations in recent
268         releases.
269         * doc/xml/manual/evolution.xml: Add API changes since GCC 5.
270         * doc/xml/manual/spine.xml: Update copyright years.
271         * doc/xml/manual/strings.xml: Adjust tolower example to avoid
272         undefined behaviour.
273         * doc/xml/manual/test.xml: Update outdated notes on VERIFY in tests.
274         * doc/html/*: Regenerate.
276 2018-04-10  Jonathan Wakely  <jwakely@redhat.com>
278         * doc/xml/faq.xml: Update links to archived copy of SGI STL docs.
279         * doc/xml/manual/backwards_compatibility.xml: Likewise.
280         * doc/xml/manual/containers.xml: Likewise.
281         * doc/xml/manual/debug_mode.xml: Likewise.
282         * doc/xml/manual/extensions.xml: Likewise.
283         * doc/xml/manual/policy_data_structures_biblio.xml: Likewise.
284         * doc/xml/manual/using.xml: Likewise.
285         * doc/xml/manual/utilities.xml: Likewise.
287         PR libstdc++/85222
288         * src/c++11/Makefile.am [ENABLE_DUAL_ABI]: Add special rules for
289         cxx11-ios_failure.cc to rewrite type info for __ios_failure.
290         * src/c++11/Makefile.in: Regenerate.
291         * src/c++11/cxx11-ios_failure.cc (__ios_failure, __iosfail_type_info):
292         New types.
293         [_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
294         * src/c++11/ios.cc (__throw_ios_failure): Remove definition.
295         * src/c++98/ios_failure.cc (__construct_ios_failure)
296         (__destroy_ios_failure, is_ios_failure_handler): New functions.
297         [!_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
298         * testsuite/27_io/ios_base/failure/dual_abi.cc: New.
299         * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Revert changes to
300         handler types, to always catch std::ios_base::failure.
301         * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
302         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
303         exceptions_failbit.cc: Likewise.
304         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
305         exceptions_failbit.cc: Likewise.
306         * testsuite/27_io/basic_istream/extractors_other/char/
307         exceptions_null.cc: Likewise.
308         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
309         exceptions_null.cc: Likewise.
310         * testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
311         * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
312         * testsuite/27_io/basic_ostream/inserters_other/char/
313         exceptions_null.cc: Likewise.
314         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
315         exceptions_null.cc: Likewise.
316         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
318 2018-04-05  Jonathan Wakely  <jwakely@redhat.com>
320         * include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify
321         __get calls to avoid ADL and avoid ambiguity due to Clang bug.
323 2018-04-03  Jonathan Wakely  <jwakely@redhat.com>
325         PR libstdc++/85183
326         * include/std/variant (_Move_assign_base::operator=): Fix incorrect
327         value categories.
328         * testsuite/20_util/variant/85183.cc: New.
330 2018-03-26  Jonathan Wakely  <jwakely@redhat.com>
332         * include/std/variant (__get): Qualify calls to avoid ADL.
333         (__select_index): Adjust whitespace.
334         (variant): Add using-declaration to workaround Clang bug.
336 2018-03-22  Jonathan Wakely  <jwakely@redhat.com>
338         PR libstdc++/85040
339         * include/bits/stl_function.h (greater::__not_overloaded)
340         (less::__not_overloaded, greater_equal::__not_overloaded)
341         (less_equal::__not_overloaded): Fix ambiguous specializations.
342         * testsuite/20_util/function_objects/comparisons_pointer.cc: Add
343         tests for type with overloaded operators.
345 2018-03-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
347         PR libstdc++/77691
348         * testsuite/experimental/memory_resource/resource_adaptor.cc:
349         xfail execution on 32-bit Solaris/x86.
351 2018-03-21  Jonathan Wakely  <jwakely@redhat.com>
353         * testsuite/20_util/function_objects/comparisons_pointer.cc: Use
354         VERIFY instead of assert.
355         * testsuite/20_util/hash/84998.cc: New test.
356         * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: New
357         copy of test adjusted for Debug Mode.
358         * testsuite/23_containers/vector/cons/destructible_neg.cc: Do not run
359         test in Debug Mode.
361 2018-03-20  François Dumont  <fdumont@gcc.gnu.org>
363         PR libstdc++/84998
364         * include/bits/stl_bvector.h: Fix std::hash friend declaration.
365         * include/std/bitset: Likewise.
366         * include/bits/stl_map.h (std::map<>): Fix _Rb_tree_merge_helper friend
367         declaration.
368         * include/bits/stl_multimap.h (std::multimap<>): Likewise.
369         * include/bits/stl_multiset.h (std::multiset<>): Likewise.
370         * include/bits/stl_set.h (std::set<>): Likewise.
371         * include/bits/unordered_map.h (std::unordered_map<>): Fix
372         _Hash_merge_helper friend declaration.
373         (std::unordered_multimap<>): Likewise.
374         * include/bits/unordered_set.h (std::unordered_set<>): Likewise.
375         (std::unordered_multiset<>): Likewise.
377 2018-03-19  Gerald Pfeifer  <gerald@pfeifer.com>
379         * doc/xml/api.xml: www.fsf.org has moved to https. Also omit
380         trailing slash for domain level link.
381         * doc/xml/faq.xml: Ditto.
382         * doc/xml/manual/appendix_free.xml (software): Ditto.
383         * doc/xml/manual/intro.xml: Ditto.
384         * doc/xml/manual/spine.xml: Ditto.
385         * doc/xml/spine.xml: Ditto.
387 2018-03-19  Gerald Pfeifer  <gerald@pfeifer.com>
389         * doc/xml/manual/documentation_hacking.xml: Adjust link to
390         docbook.org.
392 2018-03-17  Jonathan Wakely  <jwakely@redhat.com>
394         * testsuite/20_util/function_objects/comparisons_pointer.cc: Adjust
395         to compile as C++98.
397 2018-03-14  Jonathan Wakely  <jwakely@redhat.com>
399         PR libstdc++/78420
400         * include/bits/stl_function.h (greater<_Tp*>, less<_Tp*>)
401         (greater_equal<_Tp*>, less_equal<_Tp>*): Add partial specializations
402         to ensure total order for pointers.
403         (greater<void>, less<void>, greater_equal<void>, less_equal<void>):
404         Add operator() overloads for pointer arguments and make generic
405         overloads dispatch to new _S_cmp functions when comparisons would
406         use built-in operators for pointers.
407         * testsuite/20_util/function_objects/comparisons_pointer.cc: New.
409 2018-03-12  Jonathan Wakely  <jwakely@redhat.com>
411         PR libstdc++/84773
412         PR libstdc++/83662
413         * crossconfig.m4: Check for aligned_alloc etc. on freebsd and mingw32.
414         * configure: Regenerate.
415         * include/c_global/cstdlib [_GLIBCXX_HAVE_ALIGNED_ALLOC]
416         (aligned_alloc): Add using-declaration.
417         * testsuite/18_support/aligned_alloc/aligned_alloc.cc: New test.
419 2018-03-09  François Dumont  <fdumont@gcc.gnu.org>
421         * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
422         Fix std::_Fwd_list_iterator and std::_Fwd_list_const_iterator printers
423         registration.
425 2018-03-09  Jonathan Wakely  <jwakely@redhat.com>
427         PR libstdc++/84769
428         * include/std/variant (get<_Tp, _Types...>, get_if<_Tp, _Types...>):
429         Qualify calls to get<_Np, Types...> and get_if<_Np, _Types...>.
431         src/filesystem/ops.cc (create_dir): Pass error_code to is_directory.
432         src/filesystem/std-ops.cc (create_dir): Likewise.
434 2018-03-08  François Dumont  <fdumont@gcc.gnu.org>
436         * python/libstdcxx/v6/printers.py (NodeIteratorPrinter): New.
437         (StdListIteratorPrinter): Inherit from latter.
438         (StdFwdListIteratorPrinter): New, inherit from latter.
439         (StdDebugIteratorPrinter.to_string): Use non-debug iterator printer
440         when iterator has no associated container.
441         (build_libstdcxx_dictionary): Add __gnu_cxx::_Fwd_list_iterator and
442         __gnu_cxx::_Fwd_list_const_iterator printers. Remove __norm namespace
443         registrations.
444         * testsuite/libstdc++-prettyprinters/debug.cc: Adapt.
445         * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Adapt.
447 2018-03-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
449         PR libstdc++/84601
450         * include/std/optional (_Optional_payload): Split into multiple
451         specializations that can handle different cases of trivial or
452         non-trivial assignment operators.
453         * testsuite/20_util/optional/84601.cc: New.
454         * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
456 2018-03-02  Jonathan Wakely  <jwakely@redhat.com>
458         PR libstdc++/84671
459         * include/bits/parse_numbers.h (_Number_help): Add partial
460         specialization to handle digit separators. Adjust partial
461         specialization for recursion temrination to require _Pow == 1ULL.
462         * testsuite/20_util/duration/literals/84671.cc: New
464 2018-02-27  Ville Voutilainen  <ville.voutilainen@gmail.com>
466         Implement the missing bits of LWG 2769
467         * include/std/any (any_cast(const any&)): Add static_assert.
468         (any_cast(any&)): Likewise.
469         (any_cast(any&&)): Likewise, and remove the handling
470         for copyable-but-not-movable type.
471         * testsuite/20_util/any/misc/any_cast.cc: Adjust.
472         * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise, and
473         add new tests.
475 2018-02-23  Jonathan Wakely  <jwakely@redhat.com>
477         PR libstdc++/84532
478         * include/std/thread (thread::__make_invoker): Construct tuple
479         directly instead of using make_tuple.
480         * testsuite/30_threads/async/84532.cc: New.
481         * testsuite/30_threads/thread/84532.cc: New.
483 2018-02-20  François Dumont  <fdumont@gcc.gnu.org>
485         * include/ext/aligned_buffer.h [_GLIBCXX_INLINE_VERSION]
486         (template<> __aligned_buffer): Define as __aligned_membuf alias.
488 2018-02-19  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
490         PR target/84148
491         * configure: Regenerate.
493 2018-02-15  Jonathan Wakely  <jwakely@redhat.com>
495         PR libstdc++/81797
496         * configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
497         * configure: Regenerate.
498         * include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
499         defined.
500         * include/Makefile.in: Regenerate.
502 2018-01-29  Jonathan Wakely  <jwakely@redhat.com>
504         PR libstdc++/83833
505         * testsuite/26_numerics/random/chi_squared_distribution/83833.cc:
506         Add -ffloat-store to options for m68k and ia32.
508         * doc/xml/faq.xml: Update copyright years.
509         * doc/html/*: Regenerate.
511         PR libstdc++/83658
512         * include/std/any (any::__do_emplace): Only set _M_manager after
513         constructing the contained object.
514         * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust dg-error line.
515         * testsuite/20_util/any/modifiers/83658.cc: New test.
517 2018-01-25  Jonathan Wakely  <jwakely@redhat.com>
519         PR libstdc++/81076
520         * include/c_global/cstddef (__byte_operand): Define primary template.
521         * testsuite/18_support/byte/81076.cc: New test.
523 2018-01-19  Christophe Lyon  <christophe.lyon@linaro.org>
525         * testsuite/ext/special_functions/airy_ai/check_nan.cc: Fix
526         dg-options and dg-add-options order.
527         * testsuite/ext/special_functions/airy_bi/check_nan.cc: Likewise.
528         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc:
529         Likewise.
530         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
531         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
532         Likewise.
533         * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
534         Likewise.
535         * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
536         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc:
537         Likewise.
538         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc:
539         Likewise.
540         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc:
541         Likewise.
542         * testsuite/special_functions/06_comp_ellint_3/pr66689.cc:
543         Likewise.
544         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc:
545         Likewise.
546         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc:
547         Likewise.
548         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc:
549         Likewise.
550         * testsuite/special_functions/10_cyl_neumann/check_nan.cc:
551         Likewise.
552         * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
553         * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
554         * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
555         * testsuite/special_functions/13_ellint_3/pr66689.cc: Likewise.
556         * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
557         * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
558         * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
559         * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
560         * testsuite/special_functions/18_riemann_zeta/check_nan.cc:
561         Likewise.
562         * testsuite/special_functions/19_sph_bessel/check_nan.cc:
563         Likewise.
564         * testsuite/special_functions/20_sph_legendre/check_nan.cc:
565         Likewise.
566         * testsuite/special_functions/21_sph_neumann/check_nan.cc:
567         Likewise.
569 2018-01-18  Uros Bizjak  <ubizjak@gmail.com>
571         * configure.ac (AC_CHECK_HEADERS): Add linux/types.h.  Conditionally
572         include linux/types.h when checking linux/random.h header.
573         * config.h.in: Regenerate.
574         * configure: Ditto.
575         * src/c++11/random.cc: Conditionally include linux/types.h.
577 2018-01-16  Eric Botcazou  <ebotcazou@adacore.com>
579         * testsuite/17_intro/names.cc: Undefine 'y' on SPARC/Linux.
581 2018-01-16  Jonathan Wakely  <jwakely@redhat.com>
583         PR libstdc++/83834
584         * config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace std::c[a-g]* wildcard
585         pattern with exact match for std::cerr.
587 2018-01-15  Jonathan Wakely  <jwakely@redhat.com>
589         PR libstdc++/83833
590         * include/bits/random.h (chi_squared_distribution::param): Update
591         gamma distribution parameter.
592         * testsuite/26_numerics/random/chi_squared_distribution/83833.cc: New
593         test.
595         PR libstdc++/83830
596         * include/std/type_traits (has_unique_object_representations_v): Add
597         variable template.
598         * testsuite/20_util/has_unique_object_representations/value.cc: Check
599         variable template.
601 2018-01-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
603         Make optional conditionally
604         trivially_{copy,move}_{constructible,assignable}
605         * include/std/optional (_Optional_payload): Fix the comment in
606         the class head and turn into a primary and one specialization.
607         (_Optional_payload::_M_engaged): Strike the NSDMI.
608         (_Optional_payload<_Tp, false>::operator=(const _Optional_payload&)):
609         New.
610         (_Optional_payload<_Tp, false>::operator=(_Optional_payload&&)):
611         Likewise.
612         (_Optional_payload<_Tp, false>::_M_get): Likewise.
613         (_Optional_payload<_Tp, false>::_M_reset): Likewise.
614         (_Optional_base_impl): Likewise.
615         (_Optional_base): Turn into a primary and three specializations.
616         (optional(nullopt)): Change the base init.
617         * testsuite/20_util/optional/assignment/8.cc: New.
618         * testsuite/20_util/optional/cons/trivial.cc: Likewise.
619         * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
621 2018-01-15  Jonathan Wakely  <jwakely@redhat.com>
623         PR libstdc++/80276
624         * python/libstdcxx/v6/printers.py (strip_inline_namespaces): New.
625         (get_template_arg_list): New.
626         (StdVariantPrinter._template_args): Remove, use get_template_arg_list
627         instead.
628         (TemplateTypePrinter): Rewrite to work with gdb.Type objects instead
629         of strings and regular expressions.
630         (add_one_template_type_printer): Adapt to new TemplateTypePrinter.
631         (FilteringTypePrinter): Add docstring. Match using startswith. Use
632         strip_inline_namespaces instead of strip_versioned_namespace.
633         (add_one_type_printer): Prepend namespace to match argument.
634         (register_type_printers): Add type printers for char16_t and char32_t
635         string types and for types using cxx11 ABI. Update calls to
636         add_one_template_type_printer to provide default argument dicts.
637         * testsuite/libstdc++-prettyprinters/80276.cc: New test.
638         * testsuite/libstdc++-prettyprinters/whatis.cc: Remove tests for
639         basic_string<unsigned char> and basic_string<signed char>.
640         * testsuite/libstdc++-prettyprinters/whatis2.cc: Duplicate whatis.cc
641         to test local variables, without overriding _GLIBCXX_USE_CXX11_ABI.
643 2018-01-14  Andreas Schwab  <schwab@linux-m68k.org>
645         PR libstdc++/81092
646         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
648 2018-01-13  Tim Shen  <timshen@google.com>
650         PR libstdc++/83601
651         * include/bits/regex.tcc (regex_replace): Fix escaping in sed.
652         * testsuite/28_regex/algorithms/regex_replace/char/pr83601.cc: Tests.
653         * testsuite/28_regex/algorithms/regex_replace/wchar_t/pr83601.cc: Tests.
655 2018-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
657         PR libstdc++/64054
658         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
659         Remove dg-xfail-run-if.
661 2018-01-10  François Dumont  <fdumont@gcc.gnu.org>
663         * include/bits/forward_list.h
664         (_Fwd_list_node_base(_Fwd_list_node_base&&)): New.
665         (_Fwd_list_node_base& operator=(_Fwd_list_node_base&&)): New.
666         (_Fwd_list_node_base(const _Fwd_list_node_base&)): Explicit delete.
667         (_Fwd_list_node_base& operator=(const _Fwd_list_node_base&)): Likewise.
668         (_Fwd_list_impl()): Add noexcept qualification.
669         (_Fwd_list_impl(const _Node_alloc_type&)): Delete.
670         (_Fwd_list_impl(_Fwd_list_impl&&)): New, default.
671         (_Fwd_list_impl(_Fwd_list_impl&&, _Node_alloc_type&&)): New.
672         (_Fwd_list_base()): Default.
673         (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&, true_type)): New.
674         (_Fwd_list_base(_Fwd_list_base&&)): Default.
675         (forward_list<>()): Default.
676         (forward_list<>(forward_list&&)): Default.
677         (forward_list(forward_list&&, _Node_alloc_type&&, false_type)): New.
678         (forward_list(forward_list&&, _Node_alloc_type&&, true_type)): New.
679         (forward_list(forward_list&&, const _Alloc&)): Adapt to use latters.
680         * include/bits/forward_list.tcc
681         (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&)): Adapt to use
682         _M_impl._M_head move assignment.
683         (forward_list<>::merge(forward_list<>&&, _Comp)): Likewise.
684         * testsuite/23_containers/forward_list/allocator/default_init.cc: New.
686 2018-01-09  Jonathan Wakely  <jwakely@redhat.com>
688         PR libstdc++/80276
689         * python/libstdcxx/v6/printers.py (SharedPointerPrinter)
690         (UniquePointerPrinter): Print correct template argument, not type of
691         the pointer.
692         (TemplateTypePrinter._recognizer.recognize): Handle failure to lookup
693         a type.
694         * testsuite/libstdc++-prettyprinters/cxx11.cc: Test unique_ptr of
695         array type.
696         * testsuite/libstdc++-prettyprinters/cxx17.cc: Test shared_ptr and
697         weak_ptr of array types.
699 2018-01-09  François Dumont  <fdumont@gcc.gnu.org>
701         PR libstdc++/83709
702         * include/bits/hashtable_policy.h
703         (__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
704         __first != __last.
705         (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
706         (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
707         Add false_type parameter.
708         (_Insert_base::insert): Adapt.
709         * include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
710         Adapt.
711         (_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
712          Add __n_elt parameter, defaulted to 1.
713         (_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
714         policy _M_need_rehash.
715         (_Hashtable::_M_merge_unique): Pass target number of elements to add to
716         produce only 1 rehash if necessary.
717         * testsuite/23_containers/unordered_map/insert/83709.cc: New.
718         * testsuite/23_containers/unordered_set/insert/83709.cc: New.
720 2018-01-09  Juraj Oršulić  <juraj.orsulic@fer.hr>
721             Jonathan Wakely  <jwakely@redhat.com>
723         PR libstdc++/59253 (partial)
724         * python/libstdcxx/v6/printers.py (SmartPtrIterator): Common iterator
725         type for pointer stored by shared_ptr, weak_ptr and unique_ptr.
726         (SharedPointerPrinter, UniquePointerPrinter): Treat stored values as
727         children.
728         * testsuite/libstdc++-prettyprinters/cxx11.cc: Update expected output
729         of unique_ptr printer.
730         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Update expected
731         output of shared_ptr printer.
733 2018-01-05  Jonathan Wakely  <jwakely@redhat.com>
735         PR libstdc++/83626
736         * src/filesystem/ops.cc (remove(const path&, error_code&)): Remove
737         unnecessary symlink_status call.
738         (remove_all(const path&, error_code&)): Use filesystem::remove.
739         * src/filesystem/std-ops.cc: Likewise.
741         PR libstdc++/83279
742         * src/filesystem/std-ops.cc  (do_copy_file): Use non-null offset with
743         sendfile.
745         PR libstdc++/83626
746         * src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
747         report an error for ENOENT.
748         (remove_all(const path&)): Fix type of result variable.
749         (remove_all(const path&, error_code&)): Use non-throwing increment
750         for directory iterator. Call POSIX remove directly to avoid redundant
751         calls to symlink_status. Do not report errors for ENOENT.
752         * src/filesystem/std-ops.cc: Likewise.
753         * testsuite/27_io/filesystem/operations/remove_all.cc: Test throwing
754         overload.
755         * testsuite/experimental/filesystem/operations/remove_all.cc:
756         Likewise.
758 2018-01-04  Jonathan Wakely  <jwakely@redhat.com>
760         PR libstdc++/83626
761         * src/filesystem/ops.cc (remove(const path&, error_code&))): Remove
762         redundant call to ec.clear().
763         (remove_all(const path&, error_code&))): Do not return an error for
764         non-existent paths.
765         * src/filesystem/std-ops.cc: Likewise.
766         * testsuite/27_io/filesystem/operations/remove.cc: New test.
767         * testsuite/27_io/filesystem/operations/remove_all.cc: Fix expected
768         results for non-existent paths.
769         * testsuite/experimental/filesystem/operations/remove.cc: New test.
770         * testsuite/experimental/filesystem/operations/remove_all.cc: Fix
771         expected results for non-existent paths.
773         * include/bits/fs_ops.h (exists(const path&, error_code&))): Only
774         check status_known once.
775         * include/experimental/bits/fs_ops.h: Likewise.
777         PR libstdc++/83607
778         * include/std/functional (__is_byte_like): New trait.
779         (__is_std_equal_to): Remove.
780         (__boyer_moore_base_t): Use __is_byte_like instead of
781         __is_std_equal_to.
782         * include/experimental/functional (__is_std_equal_to): Remove.
783         (__boyer_moore_base_t): Use __is_byte_like instead of
784         __is_std_equal_to.
785         * testsuite/20_util/function_objects/83607.cc: New test.
787 2018-01-03  Ville Voutilainen  <ville.voutilainen@gmail.com>
789         Protect optional's deduction guide with the feature macro
790         * include/std/optional: Use the feature macro.
792 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
794         Update copyright years.
796 Copyright (C) 2018 Free Software Foundation, Inc.
798 Copying and distribution of this file, with or without modification,
799 are permitted in any medium without royalty provided the copyright
800 notice and this notice are preserved.