1 2018-05-02 François Dumont <fdumont@gcc.gnu.org>
3 * include/bits/deque.tcc (deque<>::_M_assign_aux): Cast to void to
4 ensure overloaded comma not used.
5 * include/bits/list.tcc (list<>::_M_assign_dispatch): Likewise.
6 * include/bits/vector.tcc (vector<>::_M_assign_aux): Likewise.
7 * include/bits/stl_bvector.h (vector<bool>::_M_assign_aux): Likewise.
8 * testsuite/23_containers/deque/modifiers/assign/1.cc: New.
9 * testsuite/23_containers/list/modifiers/assign/1.cc: New.
10 * testsuite/23_containers/vector/bool/modifiers/assign/1.cc: New.
11 * testsuite/23_containers/vector/modifiers/assign/1.cc: New.
13 2018-05-02 Jonathan Wakely <jwakely@redhat.com>
16 * include/bits/ios_base.h (ios_base::iword, ios_base::pword): Cast
18 * src/c++11/ios.cc (ios_base::_M_grow_words): Treat negative indices
19 as failure. Refactor error handling.
20 * testsuite/27_io/ios_base/storage/68197.cc: New.
24 * include/bits/gslice_array.h (gslice_array): Define default
25 constructor as deleted, as per C++11 standard.
26 * include/bits/mask_array.h (mask_array): Likewise.
27 * include/bits/slice_array.h (slice_array): Likewise.
28 * include/bits/valarray_after.h (_GBase, _GClos, _IBase, _IClos): Move
29 to namespace __detail.
30 (_GBase::_M_expr, _IBase::_M_expr): Use _ValArrayRef for type of data
32 * include/bits/valarray_before.h (_ValArrayRef): New helper for type
33 of data members in closure objects.
34 (_FunBase, _ValFunClos, _RefFunClos, _UnBase, _UnClos, _BinBase)
35 (_BinBase2, _BinBase1, _BinClos, _SBase, _SClos): Move to namespace
37 (_FunBase::_M_expr, _UnBase::_M_expr, _BinBase::_M_expr1)
38 (_BinBase::_M_expr2, _BinBase2::_M_expr1, _BinBase1::_M_expr2)
39 (_SBase::_M_expr): Use _ValArrayRef for type of data members.
40 * include/std/valarray (_UnClos, _BinClos, _SClos, _GClos, _IClos)
41 (_ValFunClos, _RefFunClos): Move to namespace __detail and add
42 using-declarations to namespace std.
43 * testsuite/26_numerics/valarray/83860.cc: New.
45 * testsuite/backward/strstream_move.cc: Remove duplicate function
49 * include/backward/strstream (strstreambuf): Define move constructor
50 and move assignment operator.
51 (istrstream, ostrstream, strstream): Likewise.
52 * testsuite/backward/strstream_move.cc: New.
54 2018-05-01 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
57 * acinclude.m4: Set ENABLE_FLOAT128 instead of _GLIBCXX_USE_FLOAT128.
58 * config.h.in: Remove references to _GLIBCXX_USE_FLOAT128.
59 * configure: Regenerate.
60 * include/Makefile.am: Replace the value of _GLIBCXX_USE_FLOAT128
61 based on ENABLE_FLOAT128.
62 * include/Makefile.in: Regenerate.
63 * include/bits/c++config: Define _GLIBCXX_USE_FLOAT128.
64 [!defined(__FLOAT128__) && !defined(__SIZEOF_FLOAT128__)]: Undefine
65 _GLIBCXX_USE_FLOAT128.
67 2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
69 * configure: Regenerated.
71 2018-04-19 Jakub Jelinek <jakub@redhat.com>
73 * configure: Regenerated.
75 2018-04-18 Jonathan Wakely <jwakely@redhat.com>
76 Jakub Jelinek <jakub@redhat.com>
79 * src/c++11/Makefile.am: Don't generate debuginfo again for
80 cxx11-ios_failure-lt.s and cxx11-ios_failure.s files.
81 * src/c++11/Makefile.in: Regenerate.
83 2018-04-18 Jonathan Wakely <jwakely@redhat.com>
86 * testsuite/30_threads/thread/cons/terminate.cc
87 [!_GLIBCXX_USE_C99_STDLIB] : Use _exit or std::exit instead of _Exit.
89 2018-04-18 David Malcolm <dmalcolm@redhat.com>
92 * configure: Regenerate.
94 2018-04-16 Jonathan Wakely <jwakely@redhat.com>
96 * testsuite/experimental/filesystem/file_status/1.cc: Add
97 -DUSE_FILESYSTEM_TS to dg-options.
98 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
100 * testsuite/experimental/filesystem/iterators/pop.cc: Likewise.
101 * testsuite/experimental/filesystem/iterators/
102 recursive_directory_iterator.cc: Likewise.
103 * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
104 * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
105 * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
106 * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
107 * testsuite/experimental/filesystem/operations/create_directories.cc:
109 * testsuite/experimental/filesystem/operations/create_directory.cc:
111 * testsuite/experimental/filesystem/operations/create_symlink.cc:
113 * testsuite/experimental/filesystem/operations/current_path.cc:
115 * testsuite/experimental/filesystem/operations/equivalent.cc: Likewise.
116 * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
117 * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
118 * testsuite/experimental/filesystem/operations/is_empty.cc: Likewise.
119 * testsuite/experimental/filesystem/operations/last_write_time.cc:
121 * testsuite/experimental/filesystem/operations/permissions.cc:
123 * testsuite/experimental/filesystem/operations/read_symlink.cc:
125 * testsuite/experimental/filesystem/operations/remove.cc: Likewise.
126 * testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
127 * testsuite/experimental/filesystem/operations/status.cc: Likewise.
128 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
130 * testsuite/experimental/filesystem/path/append/path.cc: Likewise.
131 * testsuite/experimental/filesystem/path/assign/assign.cc: Likewise.
132 * testsuite/experimental/filesystem/path/assign/copy.cc: Likewise.
133 * testsuite/experimental/filesystem/path/compare/compare.cc: Likewise.
134 * testsuite/experimental/filesystem/path/compare/path.cc: Likewise.
135 * testsuite/experimental/filesystem/path/compare/strings.cc: Likewise.
136 * testsuite/experimental/filesystem/path/concat/path.cc: Likewise.
137 * testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
138 * testsuite/experimental/filesystem/path/construct/copy.cc: Likewise.
139 * testsuite/experimental/filesystem/path/construct/default.cc:
141 * testsuite/experimental/filesystem/path/construct/locale.cc: Likewise.
142 * testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
143 * testsuite/experimental/filesystem/path/construct/string_view.cc:
145 * testsuite/experimental/filesystem/path/decompose/extension.cc:
147 * testsuite/experimental/filesystem/path/decompose/filename.cc:
149 * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
151 * testsuite/experimental/filesystem/path/decompose/relative_path.cc:
153 * testsuite/experimental/filesystem/path/decompose/root_directory.cc:
155 * testsuite/experimental/filesystem/path/decompose/root_name.cc:
157 * testsuite/experimental/filesystem/path/decompose/root_path.cc:
159 * testsuite/experimental/filesystem/path/decompose/stem.cc: Likewise.
160 * testsuite/experimental/filesystem/path/generic/generic_string.cc:
162 * testsuite/experimental/filesystem/path/itr/traversal.cc: Likewise.
163 * testsuite/experimental/filesystem/path/modifiers/clear.cc: Likewise.
164 * testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
166 * testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
168 * testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
170 * testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
172 * testsuite/experimental/filesystem/path/modifiers/swap.cc: Likewise.
173 * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
174 * testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
176 * testsuite/experimental/filesystem/path/query/empty.cc: Likewise.
177 * testsuite/experimental/filesystem/path/query/has_extension.cc:
179 * testsuite/experimental/filesystem/path/query/has_filename.cc:
181 * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
183 * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
185 * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
187 * testsuite/experimental/filesystem/path/query/has_root_name.cc:
189 * testsuite/experimental/filesystem/path/query/has_root_path.cc:
191 * testsuite/experimental/filesystem/path/query/has_stem.cc: Likewise.
192 * testsuite/experimental/filesystem/path/query/is_relative.cc:
195 2018-04-13 Jonathan Wakely <jwakely@redhat.com>
197 * src/c++11/Makefile.am: Fix sed command.
198 * src/c++11/Makefile.in: Regenerate.
200 * src/c++11/Makefile.am: Rewrite sed rule to be less fragile and to
201 handle mangled names starting with double underscores on darwin.
202 * src/c++11/Makefile.in: Regenerate.
204 2018-04-12 Jonathan Wakely <jwakely@redhat.com>
206 * src/c++11/Makefile.am: Fix comment.
207 * src/c++11/Makefile.in: Regenerate.
208 * src/c++11/cxx11-ios_failure.cc: Fix comment.
209 * src/c++98/ios_failure.cc: Likewise.
211 * src/c++11/ios.cc: Remove redundant macro definition.
213 2018-04-11 Jonathan Wakely <jwakely@redhat.com>
215 * doc/xml/manual/abi.xml: Document header locations in recent
217 * doc/xml/manual/evolution.xml: Add API changes since GCC 5.
218 * doc/xml/manual/spine.xml: Update copyright years.
219 * doc/xml/manual/strings.xml: Adjust tolower example to avoid
221 * doc/xml/manual/test.xml: Update outdated notes on VERIFY in tests.
222 * doc/html/*: Regenerate.
224 2018-04-10 Jonathan Wakely <jwakely@redhat.com>
226 * doc/xml/faq.xml: Update links to archived copy of SGI STL docs.
227 * doc/xml/manual/backwards_compatibility.xml: Likewise.
228 * doc/xml/manual/containers.xml: Likewise.
229 * doc/xml/manual/debug_mode.xml: Likewise.
230 * doc/xml/manual/extensions.xml: Likewise.
231 * doc/xml/manual/policy_data_structures_biblio.xml: Likewise.
232 * doc/xml/manual/using.xml: Likewise.
233 * doc/xml/manual/utilities.xml: Likewise.
236 * src/c++11/Makefile.am [ENABLE_DUAL_ABI]: Add special rules for
237 cxx11-ios_failure.cc to rewrite type info for __ios_failure.
238 * src/c++11/Makefile.in: Regenerate.
239 * src/c++11/cxx11-ios_failure.cc (__ios_failure, __iosfail_type_info):
241 [_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
242 * src/c++11/ios.cc (__throw_ios_failure): Remove definition.
243 * src/c++98/ios_failure.cc (__construct_ios_failure)
244 (__destroy_ios_failure, is_ios_failure_handler): New functions.
245 [!_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
246 * testsuite/27_io/ios_base/failure/dual_abi.cc: New.
247 * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Revert changes to
248 handler types, to always catch std::ios_base::failure.
249 * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
250 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
251 exceptions_failbit.cc: Likewise.
252 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
253 exceptions_failbit.cc: Likewise.
254 * testsuite/27_io/basic_istream/extractors_other/char/
255 exceptions_null.cc: Likewise.
256 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
257 exceptions_null.cc: Likewise.
258 * testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
259 * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
260 * testsuite/27_io/basic_ostream/inserters_other/char/
261 exceptions_null.cc: Likewise.
262 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
263 exceptions_null.cc: Likewise.
264 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
266 2018-04-05 Jonathan Wakely <jwakely@redhat.com>
268 * include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify
269 __get calls to avoid ADL and avoid ambiguity due to Clang bug.
271 2018-04-03 Jonathan Wakely <jwakely@redhat.com>
274 * include/std/variant (_Move_assign_base::operator=): Fix incorrect
276 * testsuite/20_util/variant/85183.cc: New.
278 2018-03-26 Jonathan Wakely <jwakely@redhat.com>
280 * include/std/variant (__get): Qualify calls to avoid ADL.
281 (__select_index): Adjust whitespace.
282 (variant): Add using-declaration to workaround Clang bug.
284 2018-03-22 Jonathan Wakely <jwakely@redhat.com>
287 * include/bits/stl_function.h (greater::__not_overloaded)
288 (less::__not_overloaded, greater_equal::__not_overloaded)
289 (less_equal::__not_overloaded): Fix ambiguous specializations.
290 * testsuite/20_util/function_objects/comparisons_pointer.cc: Add
291 tests for type with overloaded operators.
293 2018-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
296 * testsuite/experimental/memory_resource/resource_adaptor.cc:
297 xfail execution on 32-bit Solaris/x86.
299 2018-03-21 Jonathan Wakely <jwakely@redhat.com>
301 * testsuite/20_util/function_objects/comparisons_pointer.cc: Use
302 VERIFY instead of assert.
303 * testsuite/20_util/hash/84998.cc: New test.
304 * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: New
305 copy of test adjusted for Debug Mode.
306 * testsuite/23_containers/vector/cons/destructible_neg.cc: Do not run
309 2018-03-20 François Dumont <fdumont@gcc.gnu.org>
312 * include/bits/stl_bvector.h: Fix std::hash friend declaration.
313 * include/std/bitset: Likewise.
314 * include/bits/stl_map.h (std::map<>): Fix _Rb_tree_merge_helper friend
316 * include/bits/stl_multimap.h (std::multimap<>): Likewise.
317 * include/bits/stl_multiset.h (std::multiset<>): Likewise.
318 * include/bits/stl_set.h (std::set<>): Likewise.
319 * include/bits/unordered_map.h (std::unordered_map<>): Fix
320 _Hash_merge_helper friend declaration.
321 (std::unordered_multimap<>): Likewise.
322 * include/bits/unordered_set.h (std::unordered_set<>): Likewise.
323 (std::unordered_multiset<>): Likewise.
325 2018-03-19 Gerald Pfeifer <gerald@pfeifer.com>
327 * doc/xml/api.xml: www.fsf.org has moved to https. Also omit
328 trailing slash for domain level link.
329 * doc/xml/faq.xml: Ditto.
330 * doc/xml/manual/appendix_free.xml (software): Ditto.
331 * doc/xml/manual/intro.xml: Ditto.
332 * doc/xml/manual/spine.xml: Ditto.
333 * doc/xml/spine.xml: Ditto.
335 2018-03-19 Gerald Pfeifer <gerald@pfeifer.com>
337 * doc/xml/manual/documentation_hacking.xml: Adjust link to
340 2018-03-17 Jonathan Wakely <jwakely@redhat.com>
342 * testsuite/20_util/function_objects/comparisons_pointer.cc: Adjust
345 2018-03-14 Jonathan Wakely <jwakely@redhat.com>
348 * include/bits/stl_function.h (greater<_Tp*>, less<_Tp*>)
349 (greater_equal<_Tp*>, less_equal<_Tp>*): Add partial specializations
350 to ensure total order for pointers.
351 (greater<void>, less<void>, greater_equal<void>, less_equal<void>):
352 Add operator() overloads for pointer arguments and make generic
353 overloads dispatch to new _S_cmp functions when comparisons would
354 use built-in operators for pointers.
355 * testsuite/20_util/function_objects/comparisons_pointer.cc: New.
357 2018-03-12 Jonathan Wakely <jwakely@redhat.com>
361 * crossconfig.m4: Check for aligned_alloc etc. on freebsd and mingw32.
362 * configure: Regenerate.
363 * include/c_global/cstdlib [_GLIBCXX_HAVE_ALIGNED_ALLOC]
364 (aligned_alloc): Add using-declaration.
365 * testsuite/18_support/aligned_alloc/aligned_alloc.cc: New test.
367 2018-03-09 François Dumont <fdumont@gcc.gnu.org>
369 * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
370 Fix std::_Fwd_list_iterator and std::_Fwd_list_const_iterator printers
373 2018-03-09 Jonathan Wakely <jwakely@redhat.com>
376 * include/std/variant (get<_Tp, _Types...>, get_if<_Tp, _Types...>):
377 Qualify calls to get<_Np, Types...> and get_if<_Np, _Types...>.
379 src/filesystem/ops.cc (create_dir): Pass error_code to is_directory.
380 src/filesystem/std-ops.cc (create_dir): Likewise.
382 2018-03-08 François Dumont <fdumont@gcc.gnu.org>
384 * python/libstdcxx/v6/printers.py (NodeIteratorPrinter): New.
385 (StdListIteratorPrinter): Inherit from latter.
386 (StdFwdListIteratorPrinter): New, inherit from latter.
387 (StdDebugIteratorPrinter.to_string): Use non-debug iterator printer
388 when iterator has no associated container.
389 (build_libstdcxx_dictionary): Add __gnu_cxx::_Fwd_list_iterator and
390 __gnu_cxx::_Fwd_list_const_iterator printers. Remove __norm namespace
392 * testsuite/libstdc++-prettyprinters/debug.cc: Adapt.
393 * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Adapt.
395 2018-03-06 Ville Voutilainen <ville.voutilainen@gmail.com>
398 * include/std/optional (_Optional_payload): Split into multiple
399 specializations that can handle different cases of trivial or
400 non-trivial assignment operators.
401 * testsuite/20_util/optional/84601.cc: New.
402 * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
404 2018-03-02 Jonathan Wakely <jwakely@redhat.com>
407 * include/bits/parse_numbers.h (_Number_help): Add partial
408 specialization to handle digit separators. Adjust partial
409 specialization for recursion temrination to require _Pow == 1ULL.
410 * testsuite/20_util/duration/literals/84671.cc: New
412 2018-02-27 Ville Voutilainen <ville.voutilainen@gmail.com>
414 Implement the missing bits of LWG 2769
415 * include/std/any (any_cast(const any&)): Add static_assert.
416 (any_cast(any&)): Likewise.
417 (any_cast(any&&)): Likewise, and remove the handling
418 for copyable-but-not-movable type.
419 * testsuite/20_util/any/misc/any_cast.cc: Adjust.
420 * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise, and
423 2018-02-23 Jonathan Wakely <jwakely@redhat.com>
426 * include/std/thread (thread::__make_invoker): Construct tuple
427 directly instead of using make_tuple.
428 * testsuite/30_threads/async/84532.cc: New.
429 * testsuite/30_threads/thread/84532.cc: New.
431 2018-02-20 François Dumont <fdumont@gcc.gnu.org>
433 * include/ext/aligned_buffer.h [_GLIBCXX_INLINE_VERSION]
434 (template<> __aligned_buffer): Define as __aligned_membuf alias.
436 2018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
439 * configure: Regenerate.
441 2018-02-15 Jonathan Wakely <jwakely@redhat.com>
444 * configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
445 * configure: Regenerate.
446 * include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
448 * include/Makefile.in: Regenerate.
450 2018-01-29 Jonathan Wakely <jwakely@redhat.com>
453 * testsuite/26_numerics/random/chi_squared_distribution/83833.cc:
454 Add -ffloat-store to options for m68k and ia32.
456 * doc/xml/faq.xml: Update copyright years.
457 * doc/html/*: Regenerate.
460 * include/std/any (any::__do_emplace): Only set _M_manager after
461 constructing the contained object.
462 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust dg-error line.
463 * testsuite/20_util/any/modifiers/83658.cc: New test.
465 2018-01-25 Jonathan Wakely <jwakely@redhat.com>
468 * include/c_global/cstddef (__byte_operand): Define primary template.
469 * testsuite/18_support/byte/81076.cc: New test.
471 2018-01-19 Christophe Lyon <christophe.lyon@linaro.org>
473 * testsuite/ext/special_functions/airy_ai/check_nan.cc: Fix
474 dg-options and dg-add-options order.
475 * testsuite/ext/special_functions/airy_bi/check_nan.cc: Likewise.
476 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc:
478 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
479 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
481 * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
483 * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
484 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc:
486 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc:
488 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc:
490 * testsuite/special_functions/06_comp_ellint_3/pr66689.cc:
492 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc:
494 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc:
496 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc:
498 * testsuite/special_functions/10_cyl_neumann/check_nan.cc:
500 * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
501 * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
502 * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
503 * testsuite/special_functions/13_ellint_3/pr66689.cc: Likewise.
504 * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
505 * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
506 * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
507 * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
508 * testsuite/special_functions/18_riemann_zeta/check_nan.cc:
510 * testsuite/special_functions/19_sph_bessel/check_nan.cc:
512 * testsuite/special_functions/20_sph_legendre/check_nan.cc:
514 * testsuite/special_functions/21_sph_neumann/check_nan.cc:
517 2018-01-18 Uros Bizjak <ubizjak@gmail.com>
519 * configure.ac (AC_CHECK_HEADERS): Add linux/types.h. Conditionally
520 include linux/types.h when checking linux/random.h header.
521 * config.h.in: Regenerate.
523 * src/c++11/random.cc: Conditionally include linux/types.h.
525 2018-01-16 Eric Botcazou <ebotcazou@adacore.com>
527 * testsuite/17_intro/names.cc: Undefine 'y' on SPARC/Linux.
529 2018-01-16 Jonathan Wakely <jwakely@redhat.com>
532 * config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace std::c[a-g]* wildcard
533 pattern with exact match for std::cerr.
535 2018-01-15 Jonathan Wakely <jwakely@redhat.com>
538 * include/bits/random.h (chi_squared_distribution::param): Update
539 gamma distribution parameter.
540 * testsuite/26_numerics/random/chi_squared_distribution/83833.cc: New
544 * include/std/type_traits (has_unique_object_representations_v): Add
546 * testsuite/20_util/has_unique_object_representations/value.cc: Check
549 2018-01-15 Ville Voutilainen <ville.voutilainen@gmail.com>
551 Make optional conditionally
552 trivially_{copy,move}_{constructible,assignable}
553 * include/std/optional (_Optional_payload): Fix the comment in
554 the class head and turn into a primary and one specialization.
555 (_Optional_payload::_M_engaged): Strike the NSDMI.
556 (_Optional_payload<_Tp, false>::operator=(const _Optional_payload&)):
558 (_Optional_payload<_Tp, false>::operator=(_Optional_payload&&)):
560 (_Optional_payload<_Tp, false>::_M_get): Likewise.
561 (_Optional_payload<_Tp, false>::_M_reset): Likewise.
562 (_Optional_base_impl): Likewise.
563 (_Optional_base): Turn into a primary and three specializations.
564 (optional(nullopt)): Change the base init.
565 * testsuite/20_util/optional/assignment/8.cc: New.
566 * testsuite/20_util/optional/cons/trivial.cc: Likewise.
567 * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
569 2018-01-15 Jonathan Wakely <jwakely@redhat.com>
572 * python/libstdcxx/v6/printers.py (strip_inline_namespaces): New.
573 (get_template_arg_list): New.
574 (StdVariantPrinter._template_args): Remove, use get_template_arg_list
576 (TemplateTypePrinter): Rewrite to work with gdb.Type objects instead
577 of strings and regular expressions.
578 (add_one_template_type_printer): Adapt to new TemplateTypePrinter.
579 (FilteringTypePrinter): Add docstring. Match using startswith. Use
580 strip_inline_namespaces instead of strip_versioned_namespace.
581 (add_one_type_printer): Prepend namespace to match argument.
582 (register_type_printers): Add type printers for char16_t and char32_t
583 string types and for types using cxx11 ABI. Update calls to
584 add_one_template_type_printer to provide default argument dicts.
585 * testsuite/libstdc++-prettyprinters/80276.cc: New test.
586 * testsuite/libstdc++-prettyprinters/whatis.cc: Remove tests for
587 basic_string<unsigned char> and basic_string<signed char>.
588 * testsuite/libstdc++-prettyprinters/whatis2.cc: Duplicate whatis.cc
589 to test local variables, without overriding _GLIBCXX_USE_CXX11_ABI.
591 2018-01-14 Andreas Schwab <schwab@linux-m68k.org>
594 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
596 2018-01-13 Tim Shen <timshen@google.com>
599 * include/bits/regex.tcc (regex_replace): Fix escaping in sed.
600 * testsuite/28_regex/algorithms/regex_replace/char/pr83601.cc: Tests.
601 * testsuite/28_regex/algorithms/regex_replace/wchar_t/pr83601.cc: Tests.
603 2018-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
606 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
607 Remove dg-xfail-run-if.
609 2018-01-10 François Dumont <fdumont@gcc.gnu.org>
611 * include/bits/forward_list.h
612 (_Fwd_list_node_base(_Fwd_list_node_base&&)): New.
613 (_Fwd_list_node_base& operator=(_Fwd_list_node_base&&)): New.
614 (_Fwd_list_node_base(const _Fwd_list_node_base&)): Explicit delete.
615 (_Fwd_list_node_base& operator=(const _Fwd_list_node_base&)): Likewise.
616 (_Fwd_list_impl()): Add noexcept qualification.
617 (_Fwd_list_impl(const _Node_alloc_type&)): Delete.
618 (_Fwd_list_impl(_Fwd_list_impl&&)): New, default.
619 (_Fwd_list_impl(_Fwd_list_impl&&, _Node_alloc_type&&)): New.
620 (_Fwd_list_base()): Default.
621 (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&, true_type)): New.
622 (_Fwd_list_base(_Fwd_list_base&&)): Default.
623 (forward_list<>()): Default.
624 (forward_list<>(forward_list&&)): Default.
625 (forward_list(forward_list&&, _Node_alloc_type&&, false_type)): New.
626 (forward_list(forward_list&&, _Node_alloc_type&&, true_type)): New.
627 (forward_list(forward_list&&, const _Alloc&)): Adapt to use latters.
628 * include/bits/forward_list.tcc
629 (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&)): Adapt to use
630 _M_impl._M_head move assignment.
631 (forward_list<>::merge(forward_list<>&&, _Comp)): Likewise.
632 * testsuite/23_containers/forward_list/allocator/default_init.cc: New.
634 2018-01-09 Jonathan Wakely <jwakely@redhat.com>
637 * python/libstdcxx/v6/printers.py (SharedPointerPrinter)
638 (UniquePointerPrinter): Print correct template argument, not type of
640 (TemplateTypePrinter._recognizer.recognize): Handle failure to lookup
642 * testsuite/libstdc++-prettyprinters/cxx11.cc: Test unique_ptr of
644 * testsuite/libstdc++-prettyprinters/cxx17.cc: Test shared_ptr and
645 weak_ptr of array types.
647 2018-01-09 François Dumont <fdumont@gcc.gnu.org>
650 * include/bits/hashtable_policy.h
651 (__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
653 (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
654 (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
655 Add false_type parameter.
656 (_Insert_base::insert): Adapt.
657 * include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
659 (_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
660 Add __n_elt parameter, defaulted to 1.
661 (_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
662 policy _M_need_rehash.
663 (_Hashtable::_M_merge_unique): Pass target number of elements to add to
664 produce only 1 rehash if necessary.
665 * testsuite/23_containers/unordered_map/insert/83709.cc: New.
666 * testsuite/23_containers/unordered_set/insert/83709.cc: New.
668 2018-01-09 Juraj Oršulić <juraj.orsulic@fer.hr>
669 Jonathan Wakely <jwakely@redhat.com>
671 PR libstdc++/59253 (partial)
672 * python/libstdcxx/v6/printers.py (SmartPtrIterator): Common iterator
673 type for pointer stored by shared_ptr, weak_ptr and unique_ptr.
674 (SharedPointerPrinter, UniquePointerPrinter): Treat stored values as
676 * testsuite/libstdc++-prettyprinters/cxx11.cc: Update expected output
677 of unique_ptr printer.
678 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Update expected
679 output of shared_ptr printer.
681 2018-01-05 Jonathan Wakely <jwakely@redhat.com>
684 * src/filesystem/ops.cc (remove(const path&, error_code&)): Remove
685 unnecessary symlink_status call.
686 (remove_all(const path&, error_code&)): Use filesystem::remove.
687 * src/filesystem/std-ops.cc: Likewise.
690 * src/filesystem/std-ops.cc (do_copy_file): Use non-null offset with
694 * src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
695 report an error for ENOENT.
696 (remove_all(const path&)): Fix type of result variable.
697 (remove_all(const path&, error_code&)): Use non-throwing increment
698 for directory iterator. Call POSIX remove directly to avoid redundant
699 calls to symlink_status. Do not report errors for ENOENT.
700 * src/filesystem/std-ops.cc: Likewise.
701 * testsuite/27_io/filesystem/operations/remove_all.cc: Test throwing
703 * testsuite/experimental/filesystem/operations/remove_all.cc:
706 2018-01-04 Jonathan Wakely <jwakely@redhat.com>
709 * src/filesystem/ops.cc (remove(const path&, error_code&))): Remove
710 redundant call to ec.clear().
711 (remove_all(const path&, error_code&))): Do not return an error for
713 * src/filesystem/std-ops.cc: Likewise.
714 * testsuite/27_io/filesystem/operations/remove.cc: New test.
715 * testsuite/27_io/filesystem/operations/remove_all.cc: Fix expected
716 results for non-existent paths.
717 * testsuite/experimental/filesystem/operations/remove.cc: New test.
718 * testsuite/experimental/filesystem/operations/remove_all.cc: Fix
719 expected results for non-existent paths.
721 * include/bits/fs_ops.h (exists(const path&, error_code&))): Only
722 check status_known once.
723 * include/experimental/bits/fs_ops.h: Likewise.
726 * include/std/functional (__is_byte_like): New trait.
727 (__is_std_equal_to): Remove.
728 (__boyer_moore_base_t): Use __is_byte_like instead of
730 * include/experimental/functional (__is_std_equal_to): Remove.
731 (__boyer_moore_base_t): Use __is_byte_like instead of
733 * testsuite/20_util/function_objects/83607.cc: New test.
735 2018-01-03 Ville Voutilainen <ville.voutilainen@gmail.com>
737 Protect optional's deduction guide with the feature macro
738 * include/std/optional: Use the feature macro.
740 2018-01-03 Jakub Jelinek <jakub@redhat.com>
742 Update copyright years.
744 Copyright (C) 2018 Free Software Foundation, Inc.
746 Copying and distribution of this file, with or without modification,
747 are permitted in any medium without royalty provided the copyright
748 notice and this notice are preserved.