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