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