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