1 2018-01-09 Jonathan Wakely <jwakely@redhat.com>
4 * python/libstdcxx/v6/printers.py (SharedPointerPrinter)
5 (UniquePointerPrinter): Print correct template argument, not type of
7 (TemplateTypePrinter._recognizer.recognize): Handle failure to lookup
9 * testsuite/libstdc++-prettyprinters/cxx11.cc: Test unique_ptr of
11 * testsuite/libstdc++-prettyprinters/cxx17.cc: Test shared_ptr and
12 weak_ptr of array types.
14 2018-01-09 François Dumont <fdumont@gcc.gnu.org>
17 * include/bits/hashtable_policy.h
18 (__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
20 (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
21 (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
22 Add false_type parameter.
23 (_Insert_base::insert): Adapt.
24 * include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
26 (_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
27 Add __n_elt parameter, defaulted to 1.
28 (_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
29 policy _M_need_rehash.
30 (_Hashtable::_M_merge_unique): Pass target number of elements to add to
31 produce only 1 rehash if necessary.
32 * testsuite/23_containers/unordered_map/insert/83709.cc: New.
33 * testsuite/23_containers/unordered_set/insert/83709.cc: New.
35 2018-01-09 Jonathan Wakely <jwakely@redhat.com>
37 PR libstdc++/59253 (partial)
38 * python/libstdcxx/v6/printers.py (SmartPtrIterator): Common iterator
39 type for pointer stored by shared_ptr, weak_ptr and unique_ptr.
40 (SharedPointerPrinter, UniquePointerPrinter): Treat stored values as
42 * testsuite/libstdc++-prettyprinters/cxx11.cc: Update expected output
43 of unique_ptr printer.
44 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Update expected
45 output of shared_ptr printer.
47 2018-01-05 Jonathan Wakely <jwakely@redhat.com>
50 * src/filesystem/ops.cc (remove(const path&, error_code&)): Remove
51 unnecessary symlink_status call.
52 (remove_all(const path&, error_code&)): Use filesystem::remove.
53 * src/filesystem/std-ops.cc: Likewise.
56 * src/filesystem/std-ops.cc (do_copy_file): Use non-null offset with
60 * src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
61 report an error for ENOENT.
62 (remove_all(const path&)): Fix type of result variable.
63 (remove_all(const path&, error_code&)): Use non-throwing increment
64 for directory iterator. Call POSIX remove directly to avoid redundant
65 calls to symlink_status. Do not report errors for ENOENT.
66 * src/filesystem/std-ops.cc: Likewise.
67 * testsuite/27_io/filesystem/operations/remove_all.cc: Test throwing
69 * testsuite/experimental/filesystem/operations/remove_all.cc:
72 2018-01-04 Jonathan Wakely <jwakely@redhat.com>
75 * src/filesystem/ops.cc (remove(const path&, error_code&))): Remove
76 redundant call to ec.clear().
77 (remove_all(const path&, error_code&))): Do not return an error for
79 * src/filesystem/std-ops.cc: Likewise.
80 * testsuite/27_io/filesystem/operations/remove.cc: New test.
81 * testsuite/27_io/filesystem/operations/remove_all.cc: Fix expected
82 results for non-existent paths.
83 * testsuite/experimental/filesystem/operations/remove.cc: New test.
84 * testsuite/experimental/filesystem/operations/remove_all.cc: Fix
85 expected results for non-existent paths.
87 * include/bits/fs_ops.h (exists(const path&, error_code&))): Only
88 check status_known once.
89 * include/experimental/bits/fs_ops.h: Likewise.
92 * include/std/functional (__is_byte_like): New trait.
93 (__is_std_equal_to): Remove.
94 (__boyer_moore_base_t): Use __is_byte_like instead of
96 * include/experimental/functional (__is_std_equal_to): Remove.
97 (__boyer_moore_base_t): Use __is_byte_like instead of
99 * testsuite/20_util/function_objects/83607.cc: New test.
101 2018-01-03 Ville Voutilainen <ville.voutilainen@gmail.com>
103 Protect optional's deduction guide with the feature macro
104 * include/std/optional: Use the feature macro.
106 2018-01-03 Jakub Jelinek <jakub@redhat.com>
108 Update copyright years.
110 Copyright (C) 2018 Free Software Foundation, Inc.
112 Copying and distribution of this file, with or without modification,
113 are permitted in any medium without royalty provided the copyright
114 notice and this notice are preserved.