Fix vect-reduc-or_[12].c changes in r257022
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob023e12902bc673f9300200a98097716518f37ef8
1 2018-01-19  Christophe Lyon  <christophe.lyon@linaro.org>
3         * testsuite/ext/special_functions/airy_ai/check_nan.cc: Fix
4           dg-options and dg-add-options order.
5         * testsuite/ext/special_functions/airy_bi/check_nan.cc: Likewise.
6         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc:
7         Likewise.
8         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
9         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
10         Likewise.
11         * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
12         Likewise.
13         * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
14         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc:
15         Likewise.
16         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc:
17         Likewise.
18         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc:
19         Likewise.
20         * testsuite/special_functions/06_comp_ellint_3/pr66689.cc:
21         Likewise.
22         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc:
23         Likewise.
24         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc:
25         Likewise.
26         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc:
27         Likewise.
28         * testsuite/special_functions/10_cyl_neumann/check_nan.cc:
29         Likewise.
30         * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
31         * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
32         * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
33         * testsuite/special_functions/13_ellint_3/pr66689.cc: Likewise.
34         * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
35         * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
36         * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
37         * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
38         * testsuite/special_functions/18_riemann_zeta/check_nan.cc:
39         Likewise.
40         * testsuite/special_functions/19_sph_bessel/check_nan.cc:
41         Likewise.
42         * testsuite/special_functions/20_sph_legendre/check_nan.cc:
43         Likewise.
44         * testsuite/special_functions/21_sph_neumann/check_nan.cc:
45         Likewise.
47 2018-01-18  Uros Bizjak  <ubizjak@gmail.com>
49         * configure.ac (AC_CHECK_HEADERS): Add linux/types.h.  Conditionally
50         include linux/types.h when checking linux/random.h header.
51         * config.h.in: Regenerate.
52         * configure: Ditto.
53         * src/c++11/random.cc: Conditionally include linux/types.h.
55 2018-01-16  Eric Botcazou  <ebotcazou@adacore.com>
57         * testsuite/17_intro/names.cc: Undefine 'y' on SPARC/Linux.
59 2018-01-16  Jonathan Wakely  <jwakely@redhat.com>
61         PR libstdc++/83834
62         * config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace std::c[a-g]* wildcard
63         pattern with exact match for std::cerr.
65 2018-01-15  Jonathan Wakely  <jwakely@redhat.com>
67         PR libstdc++/83833
68         * include/bits/random.h (chi_squared_distribution::param): Update
69         gamma distribution parameter.
70         * testsuite/26_numerics/random/chi_squared_distribution/83833.cc: New
71         test.
73         PR libstdc++/83830
74         * include/std/type_traits (has_unique_object_representations_v): Add
75         variable template.
76         * testsuite/20_util/has_unique_object_representations/value.cc: Check
77         variable template.
79 2018-01-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
81         Make optional conditionally
82         trivially_{copy,move}_{constructible,assignable}
83         * include/std/optional (_Optional_payload): Fix the comment in
84         the class head and turn into a primary and one specialization.
85         (_Optional_payload::_M_engaged): Strike the NSDMI.
86         (_Optional_payload<_Tp, false>::operator=(const _Optional_payload&)):
87         New.
88         (_Optional_payload<_Tp, false>::operator=(_Optional_payload&&)):
89         Likewise.
90         (_Optional_payload<_Tp, false>::_M_get): Likewise.
91         (_Optional_payload<_Tp, false>::_M_reset): Likewise.
92         (_Optional_base_impl): Likewise.
93         (_Optional_base): Turn into a primary and three specializations.
94         (optional(nullopt)): Change the base init.
95         * testsuite/20_util/optional/assignment/8.cc: New.
96         * testsuite/20_util/optional/cons/trivial.cc: Likewise.
97         * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
99 2018-01-15  Jonathan Wakely  <jwakely@redhat.com>
101         PR libstdc++/80276
102         * python/libstdcxx/v6/printers.py (strip_inline_namespaces): New.
103         (get_template_arg_list): New.
104         (StdVariantPrinter._template_args): Remove, use get_template_arg_list
105         instead.
106         (TemplateTypePrinter): Rewrite to work with gdb.Type objects instead
107         of strings and regular expressions.
108         (add_one_template_type_printer): Adapt to new TemplateTypePrinter.
109         (FilteringTypePrinter): Add docstring. Match using startswith. Use
110         strip_inline_namespaces instead of strip_versioned_namespace.
111         (add_one_type_printer): Prepend namespace to match argument.
112         (register_type_printers): Add type printers for char16_t and char32_t
113         string types and for types using cxx11 ABI. Update calls to
114         add_one_template_type_printer to provide default argument dicts.
115         * testsuite/libstdc++-prettyprinters/80276.cc: New test.
116         * testsuite/libstdc++-prettyprinters/whatis.cc: Remove tests for
117         basic_string<unsigned char> and basic_string<signed char>.
118         * testsuite/libstdc++-prettyprinters/whatis2.cc: Duplicate whatis.cc
119         to test local variables, without overriding _GLIBCXX_USE_CXX11_ABI.
121 2018-01-14  Andreas Schwab  <schwab@linux-m68k.org>
123         PR libstdc++/81092
124         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
126 2018-01-13  Tim Shen  <timshen@google.com>
128         PR libstdc++/83601
129         * include/bits/regex.tcc (regex_replace): Fix escaping in sed.
130         * testsuite/28_regex/algorithms/regex_replace/char/pr83601.cc: Tests.
131         * testsuite/28_regex/algorithms/regex_replace/wchar_t/pr83601.cc: Tests.
133 2018-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
135         PR libstdc++/64054
136         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
137         Remove dg-xfail-run-if.
139 2018-01-10  François Dumont  <fdumont@gcc.gnu.org>
141         * include/bits/forward_list.h
142         (_Fwd_list_node_base(_Fwd_list_node_base&&)): New.
143         (_Fwd_list_node_base& operator=(_Fwd_list_node_base&&)): New.
144         (_Fwd_list_node_base(const _Fwd_list_node_base&)): Explicit delete.
145         (_Fwd_list_node_base& operator=(const _Fwd_list_node_base&)): Likewise.
146         (_Fwd_list_impl()): Add noexcept qualification.
147         (_Fwd_list_impl(const _Node_alloc_type&)): Delete.
148         (_Fwd_list_impl(_Fwd_list_impl&&)): New, default.
149         (_Fwd_list_impl(_Fwd_list_impl&&, _Node_alloc_type&&)): New.
150         (_Fwd_list_base()): Default.
151         (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&, true_type)): New.
152         (_Fwd_list_base(_Fwd_list_base&&)): Default.
153         (forward_list<>()): Default.
154         (forward_list<>(forward_list&&)): Default.
155         (forward_list(forward_list&&, _Node_alloc_type&&, false_type)): New.
156         (forward_list(forward_list&&, _Node_alloc_type&&, true_type)): New.
157         (forward_list(forward_list&&, const _Alloc&)): Adapt to use latters.
158         * include/bits/forward_list.tcc
159         (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&)): Adapt to use
160         _M_impl._M_head move assignment.
161         (forward_list<>::merge(forward_list<>&&, _Comp)): Likewise.
162         * testsuite/23_containers/forward_list/allocator/default_init.cc: New.
164 2018-01-09  Jonathan Wakely  <jwakely@redhat.com>
166         PR libstdc++/80276
167         * python/libstdcxx/v6/printers.py (SharedPointerPrinter)
168         (UniquePointerPrinter): Print correct template argument, not type of
169         the pointer.
170         (TemplateTypePrinter._recognizer.recognize): Handle failure to lookup
171         a type.
172         * testsuite/libstdc++-prettyprinters/cxx11.cc: Test unique_ptr of
173         array type.
174         * testsuite/libstdc++-prettyprinters/cxx17.cc: Test shared_ptr and
175         weak_ptr of array types.
177 2018-01-09  François Dumont  <fdumont@gcc.gnu.org>
179         PR libstdc++/83709
180         * include/bits/hashtable_policy.h
181         (__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
182         __first != __last.
183         (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
184         (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
185         Add false_type parameter.
186         (_Insert_base::insert): Adapt.
187         * include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
188         Adapt.
189         (_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
190          Add __n_elt parameter, defaulted to 1.
191         (_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
192         policy _M_need_rehash.
193         (_Hashtable::_M_merge_unique): Pass target number of elements to add to
194         produce only 1 rehash if necessary.
195         * testsuite/23_containers/unordered_map/insert/83709.cc: New.
196         * testsuite/23_containers/unordered_set/insert/83709.cc: New.
198 2018-01-09  Juraj Oršulić  <juraj.orsulic@fer.hr>
199             Jonathan Wakely  <jwakely@redhat.com>
201         PR libstdc++/59253 (partial)
202         * python/libstdcxx/v6/printers.py (SmartPtrIterator): Common iterator
203         type for pointer stored by shared_ptr, weak_ptr and unique_ptr.
204         (SharedPointerPrinter, UniquePointerPrinter): Treat stored values as
205         children.
206         * testsuite/libstdc++-prettyprinters/cxx11.cc: Update expected output
207         of unique_ptr printer.
208         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Update expected
209         output of shared_ptr printer.
211 2018-01-05  Jonathan Wakely  <jwakely@redhat.com>
213         PR libstdc++/83626
214         * src/filesystem/ops.cc (remove(const path&, error_code&)): Remove
215         unnecessary symlink_status call.
216         (remove_all(const path&, error_code&)): Use filesystem::remove.
217         * src/filesystem/std-ops.cc: Likewise.
219         PR libstdc++/83279
220         * src/filesystem/std-ops.cc  (do_copy_file): Use non-null offset with
221         sendfile.
223         PR libstdc++/83626
224         * src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
225         report an error for ENOENT.
226         (remove_all(const path&)): Fix type of result variable.
227         (remove_all(const path&, error_code&)): Use non-throwing increment
228         for directory iterator. Call POSIX remove directly to avoid redundant
229         calls to symlink_status. Do not report errors for ENOENT.
230         * src/filesystem/std-ops.cc: Likewise.
231         * testsuite/27_io/filesystem/operations/remove_all.cc: Test throwing
232         overload.
233         * testsuite/experimental/filesystem/operations/remove_all.cc:
234         Likewise.
236 2018-01-04  Jonathan Wakely  <jwakely@redhat.com>
238         PR libstdc++/83626
239         * src/filesystem/ops.cc (remove(const path&, error_code&))): Remove
240         redundant call to ec.clear().
241         (remove_all(const path&, error_code&))): Do not return an error for
242         non-existent paths.
243         * src/filesystem/std-ops.cc: Likewise.
244         * testsuite/27_io/filesystem/operations/remove.cc: New test.
245         * testsuite/27_io/filesystem/operations/remove_all.cc: Fix expected
246         results for non-existent paths.
247         * testsuite/experimental/filesystem/operations/remove.cc: New test.
248         * testsuite/experimental/filesystem/operations/remove_all.cc: Fix
249         expected results for non-existent paths.
251         * include/bits/fs_ops.h (exists(const path&, error_code&))): Only
252         check status_known once.
253         * include/experimental/bits/fs_ops.h: Likewise.
255         PR libstdc++/83607
256         * include/std/functional (__is_byte_like): New trait.
257         (__is_std_equal_to): Remove.
258         (__boyer_moore_base_t): Use __is_byte_like instead of
259         __is_std_equal_to.
260         * include/experimental/functional (__is_std_equal_to): Remove.
261         (__boyer_moore_base_t): Use __is_byte_like instead of
262         __is_std_equal_to.
263         * testsuite/20_util/function_objects/83607.cc: New test.
265 2018-01-03  Ville Voutilainen  <ville.voutilainen@gmail.com>
267         Protect optional's deduction guide with the feature macro
268         * include/std/optional: Use the feature macro.
270 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
272         Update copyright years.
274 Copyright (C) 2018 Free Software Foundation, Inc.
276 Copying and distribution of this file, with or without modification,
277 are permitted in any medium without royalty provided the copyright
278 notice and this notice are preserved.