1f7a540c11
336 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
Jonathan Wakely
|
75c6a925da |
Revert ABI changes to std::allocator in C++20
The recent C++20 changes to remove the std::allocator<void> explicit specialization and the destructor in the std::allocator primary template change the result of some is_trivially_xxx type traits. To avoid those changes, this patch restores the explicit specialization and the destructor. In order to meet the C++20 requirements the std::allocator<void> explicit specialization must provide the same interface as the primary template (except for the unusable allocate and deallocate member functions) and the destructor in the primary template must be constexpr. * include/bits/allocator.h (allocator<void>): Restore the explicit specialization for C++20, but make its API consistent with the primary template. (allocator::~allocator()): Restore the destructor for C++20, but make it constexpr. * testsuite/20_util/allocator/rebind_c++20.cc: Check allocator<void>. * testsuite/20_util/allocator/requirements/typedefs_c++20.cc: Likewise. * testsuite/20_util/allocator/void.cc: Check that constructors and destructors are trivial. Check for converting constructor in C++20. * testsuite/ext/malloc_allocator/variadic_construct.cc: Simplify dejagnu target selector. * testsuite/ext/new_allocator/variadic_construct.cc: Likewise. From-SVN: r277410 |
||
Jonathan Wakely
|
2cae56bd61 |
Remove redundant std::allocator members for C++20
C++20 removes a number of std::allocator members that have correct defaults provided by std::allocator_traits, so aren't needed. Several extensions including __gnu_cxx::hash_map and tr1 containers are no longer usable with std::allocator in C++20 mode. They need to be updated to use __gnu_cxx::__alloc_traits in a follow-up patch. * include/bits/alloc_traits.h (allocator_traits<allocator<T>>::allocate): Ignore hint for C++20. (allocator_traits<allocator<T>>::construct): Perform placement new directly for C++20, instead of calling allocator<T>::construct. (allocator_traits<allocator<T>>::destroy): Call destructor directly for C++20, instead of calling allocator<T>::destroy. (allocator_traits<allocator<T>>::max_size): Return value directly for C++20, instead of calling std::allocator<T>::max_size(). (__do_alloc_on_copy, __do_alloc_on_move, __do_alloc_on_swap): Do not define for C++17 and up. (__alloc_on_copy, __alloc_on_move, __alloc_on_swap): Use if-constexpr for C++17 and up, instead of tag dispatching. * include/bits/allocator.h (allocator<void>): Remove for C++20. (allocator::pointer, allocator::const_pointer, allocator::reference) (allocator::const_reference, allocator::rebind): Remove for C++20. * include/bits/basic_string.h (basic_string): Use __alloc_traits to rebind allocator. * include/bits/memoryfwd.h (allocator<void>): Remove for C++20. * include/ext/debug_allocator.h: Use __alloc_traits for rebinding. * include/ext/malloc_allocator.h (malloc_allocator::~malloc_allocator) (malloc_allocator::pointer, malloc_allocator::const_pointer) (malloc_allocator::reference, malloc_allocator::const_reference) (malloc_allocator::rebind, malloc_allocator::max_size) (malloc_allocator::construct, malloc_allocator::destroy): Do not define for C++20. (malloc_allocator::_M_max_size): Define new function. * include/ext/new_allocator.h (new_allocator::~new_allocator) (new_allocator::pointer, new_allocator::const_pointer) (new_allocator::reference, new_allocator::const_reference) (new_allocator::rebind, new_allocator::max_size) (new_allocator::construct, new_allocator::destroy): Do not define for C++20. (new_allocator::_M_max_size): Define new function. * include/ext/rc_string_base.h (__rc_string_base::_Rep): Use __alloc_traits to rebind allocator. * include/ext/rope (_Rope_rep_base, _Rope_base): Likewise. (rope::rope(CharT, const allocator_type&)): Use __alloc_traits to construct character. * include/ext/slist (_Slist_base): Use __alloc_traits to rebind allocator. * include/ext/sso_string_base.h (__sso_string_base::_M_max_size): Use __alloc_traits. * include/ext/throw_allocator.h (throw_allocator): Do not use optional members of std::allocator, use __alloc_traits members instead. * include/ext/vstring.h (__versa_string): Use __alloc_traits. * include/ext/vstring_util.h (__vstring_utility): Likewise. * include/std/memory: Include <bits/alloc_traits.h>. * testsuite/20_util/allocator/8230.cc: Use __gnu_test::max_size. * testsuite/20_util/allocator/rebind_c++20.cc: New test. * testsuite/20_util/allocator/requirements/typedefs.cc: Do not check for pointer, const_pointer, reference, const_reference or rebind in C++20. * testsuite/20_util/allocator/requirements/typedefs_c++20.cc: New test. * testsuite/23_containers/deque/capacity/29134.cc: Use __gnu_test::max_size. * testsuite/23_containers/forward_list/capacity/1.cc: Likewise. * testsuite/23_containers/list/capacity/29134.cc: Likewise. * testsuite/23_containers/map/capacity/29134.cc: Likewise. * testsuite/23_containers/multimap/capacity/29134.cc: Likewise. * testsuite/23_containers/multiset/capacity/29134.cc: Likewise. * testsuite/23_containers/set/capacity/29134.cc: Likewise. * testsuite/23_containers/vector/capacity/29134.cc: Likewise. * testsuite/ext/malloc_allocator/variadic_construct.cc: Do not run test for C++20. * testsuite/ext/new_allocator/variadic_construct.cc: Likewise. * testsuite/ext/vstring/capacity/29134.cc: Use __gnu_test::max_size. * testsuite/util/replacement_memory_operators.h: Do not assume Alloc::pointer exists. * testsuite/util/testsuite_allocator.h (__gnu_test::max_size): Define helper to call max_size for any allocator. From-SVN: r277300 |
||
Andreas Tobler
|
ce3ecab493 |
libstdc++ testsuite, silence a FreeBSD libm warning
2019-09-30 Andreas Tobler <andreast@gcc.gnu.org> * testsuite/ext/special_functions/airy_ai/check_nan.cc: Ignore the FreeBSD warning about lower advertised precision of tgammal. * testsuite/ext/special_functions/airy_bi/check_nan.cc: Likewise. * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise. * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise. * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise. * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise. * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise. * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise. * testsuite/tr1/5_numerical_facilities/special_functions/ 08_cyl_bessel_i/check_nan.cc: Likewise. * testsuite/tr1/5_numerical_facilities/special_functions/ 09_cyl_bessel_j/check_nan.cc: Likewise. * testuite/tr1/5_numerical_facilities/special_functions/ 10_cyl_bessel_k/check_nan.cc: Likewise. * testsuite/tr1/5_numerical_facilities/special_functions/ 11_cyl_neumann/check_nan.cc: Likewise. * testsuite/tr1/5_numerical_facilities/special_functions/ 21_sph_bessel/check_nan.cc: Likewise. * testsuite/tr1/5_numerical_facilities/special_functions/ 23_sph_neumann/check_nan.cc: Likewise. From-SVN: r276372 |
||
Alexandre Oliva
|
c787deb012 |
skip Cholesky decomposition in is>>n_mv_dist
normal_mv_distribution maintains the variance-covariance matrix param in Cholesky-decomposed form. Existing param_type constructors, when taking a full or lower-triangle varcov matrix, perform Cholesky decomposition to convert it to the internal representation. This internal representation is visible both in the varcov() result, and in the streamed-out representation of a normal_mv_distribution object. The problem is that when that representation is streamed back in, the read-back decomposed varcov matrix is used as a lower-triangle non-decomposed varcov matrix, and it undergoes Cholesky decomposition again. So, each cycle of stream-out/stream-in changes the varcov matrix to its "square root", instead of restoring the original params. This patch includes Corentin's changes that introduce verification in testsuite/ext/random/normal_mv_distribution/operators/serialize.cc and other similar tests that the object read back in compares equal to the written-out object: the modified tests pass only if (u == v). This patch also fixes the error exposed by his change, introducing an alternate private constructor for param_type, used only by operator>>. for libstdc++-v3/ChangeLog * include/ext/random (normal_mv_distribution::param_type::param_type): New private ctor taking a decomposed varcov matrix, for use by... (operator>>): ... this, befriended. * include/ext/random.tcc (operator>>): Use it. (normal_mv_distribution::param_type::_M_init_lower): Adjust member function name in exception message. for libstdc++-v3/ChangeLog from Corentin Gay <gay@adacore.com> * testsuite/ext/random/beta_distribution/operators/serialize.cc, testsuite/ext/random/hypergeometric_distribution/operators/serialize.cc, testsuite/ext/random/normal_mv_distribution/operators/serialize.cc, testsuite/ext/random/triangular_distribution/operators/serialize.cc, testsuite/ext/random/von_mises_distribution/operators/serialize.cc: Add call to `VERIFY`. From-SVN: r274233 |
||
Martin Liska
|
6343b6bf3b |
Extend DCE to remove unnecessary new/delete-pairs (PR c++/23383).
2019-07-25 Martin Liska <mliska@suse.cz> Dominik Infuhr <dominik.infuehr@theobroma-systems.com> PR c++/23383 * common.opt: Add -fallocation-dce * gimple.c (gimple_call_operator_delete_p): New. * gimple.h (gimple_call_operator_delete_p): Likewise. * tree-core.h (enum function_decl_type): Add OPERATOR_DELETE. * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Handle DECL_IS_OPERATOR_DELETE_P. (mark_all_reaching_defs_necessary_1): Likewise. (propagate_necessity): Likewise. (eliminate_unnecessary_stmts): Handle gimple_call_operator_delete_p. * tree-streamer-in.c (unpack_ts_function_decl_value_fields): Add packing of OPERATOR_DELETE. * tree-streamer-out.c (pack_ts_function_decl_value_fields): Similarly here. * tree.h (DECL_IS_OPERATOR_DELETE_P): New. (DECL_SET_IS_OPERATOR_DELETE): New. (DECL_IS_REPLACEABLE_OPERATOR_NEW_P): Likewise. 2019-07-25 Martin Liska <mliska@suse.cz> Dominik Infuhr <dominik.infuehr@theobroma-systems.com> PR c++/23383 * c-decl.c (merge_decls): Merge OPERATOR_DELETE flag. 2019-07-25 Martin Liska <mliska@suse.cz> Dominik Infuhr <dominik.infuehr@theobroma-systems.com> PR c++/23383 * decl.c (cxx_init_decl_processing): Mark delete operators with DECL_SET_IS_OPERATOR_DELETE. 2019-07-25 Martin Liska <mliska@suse.cz Dominik Infuhr <dominik.infuehr@theobroma-systems.com> PR c++/23383 * g++.dg/cpp1y/new1.C: New test. 2019-07-25 Martin Liska <mliska@suse.cz> Dominik Infuhr <dominik.infuehr@theobroma-systems.com> PR c++/23383 * testsuite/ext/bitmap_allocator/check_delete.cc: Add -fno-allocation-dce. * testsuite/ext/bitmap_allocator/check_new.cc: Likewise. * testsuite/ext/new_allocator/check_delete.cc: Likewise. * testsuite/ext/new_allocator/check_new.cc: Likewise. Co-Authored-By: Dominik Infuehr <dominik.infuehr@theobroma-systems.com> From-SVN: r273791 |
||
Jonathan Wakely
|
061a745005 |
Fix tests that fail with -std=gnu++98 or -std=gnu++11
* testsuite/18_support/set_terminate.cc: Do not run for C++98 mode. * testsuite/18_support/set_unexpected.cc: Likewise. * testsuite/20_util/is_nothrow_invocable/value.cc: Test converting to void. * testsuite/20_util/is_nothrow_invocable/value_ext.cc: Fix constexpr function to be valid in C++11. * testsuite/26_numerics/complex/proj.cc: Do not run for C++98 mode. * testsuite/experimental/names.cc: Do not run for C++98 mode. Do not include Library Fundamentals or Networking headers in C++11 mode. * testsuite/ext/char8_t/atomic-1.cc: Do not run for C++98 mode. From-SVN: r271999 |
||
Rainer Orth
|
ccd1242eec |
Remove obsolete Solaris 10 support
libstdc++-v3: * config/os/solaris/solaris2.10: Move to ... * config/os/solaris: ... this. * configure.host (os_include_dir): Adapt. (abi_baseline_pair): Remove Solaris 10 handling. * config/abi/post/i386-solaris2.10: Remove. * config/abi/post/sparc-solaris2.10: Remove. * config/abi/post/i386-solaris2.11: Rename to ... * config/abi/post/i386-solaris: ... this. * config/abi/post/sparc-solaris2.11: Rename to ... * config/abi/post/sparc-solaris: ... this. * libsupc++/new_opa.cc [_GLIBCXX_HAVE_MEMALIGN] [__sun]: Remove workaround. * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.10 xfail. libsanitizer: * configure.ac (have_dl_iterate_phdr): Remove *-*-solaris2.10* handling. * configure: Regenerate. libgcc: * config.host: Simplify various *-*-solaris2.1[0-9]* to *-*-solaris2*. * configure.ac: Likewise. * configure: Regenerate. * config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove Solaris 10 and Solaris 11 < snv_125 handling. libbacktrace: * configure.ac (have_dl_iterate_phdr): Remove *-*-solaris2.10* handling. * configure: Regenerate. gcc/testsuite: * gcc.dg/atomic/c11-atomic-exec-4.c: Simplify triplet to *-*-solaris2*. * gcc.dg/atomic/c11-atomic-exec-5.c: Likewise. * gcc.dg/c99-math-double-1.c: Likewise. * gcc.dg/c99-math-float-1.c: Likewise. * gcc.dg/c99-math-long-double-1.c: Likewise. * gcc.misc-tests/linkage.exp: Simplify triplet to x86_64-*-solaris2*. * gcc.target/i386/mcount_pic.c: Remove *-*-solaris2.10* && !gld xfail. * gcc.target/i386/pr63620.c: Likewise. * lib/target-supports.exp (check_sse_os_support_available): Remove Solaris 9/x86 workaround. gcc: * config.gcc: Move *-*-solaris2.10* from obsolete configurations to unsupported ones. Simplify x86_64-*-solaris2.1[0-9]* to x86_64-*-solaris2*. * config.host: Likewise. * config/i386/sol2.h (ASM_COMMENT_START): Remove. * config/sparc/driver-sparc.c (host_detect_local_cpu) [__sun__ && __svr4__]: Remove "brand" fallback. [!KSTAT_DATA_STRING]: Remove. * configure.ac (gcc_cv_ld_hidden): Simplify *-*-solaris2.1[0-9]* to *-*-solaris2*. (comdat_group): Likewise. (set_have_as_tls): Likewise. (gcc_cv_target_dl_iterate_phdr): Likewise. (gcc_cv_as_shf_merge): Remove Solaris 10/x86 workaround. (gcc_cv_ld_aligned_shf_merge): Remove Solaris 10/SPARC workaround. * configure: Regenerate. * doc/install.texi: Simplify Solaris target triplets. (Specific, i?86-*-solaris2*): Remove Solaris 10 references. (Specific, *-*-solaris2*): Document Solaris 10 removal. Remove Solaris 10 references. Remove obsolete Solaris bug reference. (Specific, sparc-sun-solaris2.10): Remove. From-SVN: r271183 |
||
Jonathan Wakely
|
544be2beb1 |
Remove Profile Mode, deprecated since GCC 7.1
The Profile Mode extension is not used by anybody, nor maintained by anybody. The containers do not support the full API specified in recent standards, and so enabling Profile Mode is not source compatible with much modern C++ code. The heuristics that would check the profile information and make useful suggestions never materialized, so it isn't useful. It should be removed. Remove Profile Mode, deprecated since 7.1.0 * doc/Makefile.am: Remove XML file for profile mode docs. * doc/Makefile.in: Regenerate. * doc/xml/authors.xml: Remove authors of profile mode docs. * doc/xml/manual/appendix_contributing.xml: Remove mention of profile mode. * doc/xml/manual/debug.xml: Likewise. * doc/xml/manual/evolution.xml: Document removal of profile mode. * doc/xml/manual/profile_mode.xml: Remove profile mode docs. * doc/xml/manual/spine.xml: Remove profile mode author credit. * doc/xml/manual/test.xml: Remove docs for dg-require-profile-mode directive. * doc/xml/manual/using.xml: Remove docs for profile mode headers and macro. * doc/html/*: Regenerate. * include/Makefile.am: Remove profile mode headers. * include/Makefile.in: Regenerate. * include/bits/c++config (std::__profile): Remove namespace. [_GLIBCXX_PROFILE]: Remove checks for macro. * include/profile/array: Remove. * include/profile/base.h: Remove. * include/profile/bitset: Remove. * include/profile/deque: Remove. * include/profile/forward_list: Remove. * include/profile/impl/profiler.h: Remove. * include/profile/impl/profiler_algos.h: Remove. * include/profile/impl/profiler_container_size.h: Remove. * include/profile/impl/profiler_hash_func.h: Remove. * include/profile/impl/profiler_hashtable_size.h: Remove. * include/profile/impl/profiler_list_to_slist.h: Remove. * include/profile/impl/profiler_list_to_vector.h: Remove. * include/profile/impl/profiler_map_to_unordered_map.h: Remove. * include/profile/impl/profiler_node.h: Remove. * include/profile/impl/profiler_state.h: Remove. * include/profile/impl/profiler_trace.h: Remove. * include/profile/impl/profiler_vector_size.h: Remove. * include/profile/impl/profiler_vector_to_list.h: Remove. * include/profile/iterator_tracker.h: Remove. * include/profile/list: Remove. * include/profile/map: Remove. * include/profile/map.h: Remove. * include/profile/multimap.h: Remove. * include/profile/multiset.h: Remove. * include/profile/ordered_base.h: Remove. * include/profile/set: Remove. * include/profile/set.h: Remove. * include/profile/unordered_base.h: Remove. * include/profile/unordered_map: Remove. * include/profile/unordered_set: Remove. * include/profile/vector: Remove. * scripts/run_doxygen: Do not process profile mode headers. * testsuite/23_containers/array/element_access/60497.cc: Don't use profile mode type. * testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc: Remove dg-skip-if for profile mode. * testsuite/23_containers/forward_list/capacity/1.cc: Remove preprocessor check for profile mode. * testsuite/23_containers/list/capacity/29134.cc: Likewise. * testsuite/23_containers/map/modifiers/extract.cc: Remove dg-skip-if for profile mode. * testsuite/23_containers/map/modifiers/insert_or_assign/1.cc: Likewise. * testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise. * testsuite/23_containers/multimap/modifiers/extract.cc: Likewise. * testsuite/23_containers/multiset/modifiers/extract.cc: Likewise. * testsuite/23_containers/set/modifiers/extract.cc: Likewise. * testsuite/23_containers/unordered_map/modifiers/extract.cc: Likewise. * testsuite/23_containers/unordered_multimap/modifiers/extract.cc: Likewise. * testsuite/23_containers/unordered_multiset/modifiers/extract.cc: Likewise. * testsuite/23_containers/unordered_set/modifiers/extract.cc: Likewise. * testsuite/23_containers/vector/bool/capacity/29134.cc: Remove preprocessor check for profile mode. * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Likewise. * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: Remove dg-skip-if for profile mode. * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise. * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise. * testsuite/25_algorithms/lexicographical_compare/71545.cc: Likewise. * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise. * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise. * testsuite/Makefile.am: Remove profile_flags variable and * testsuite/Makefile.am: Remove profile_flags variable and check-profile target. * testsuite/Makefile.in: Regenerate. * testsuite/ext/profile/all.cc: Remove. * testsuite/ext/profile/mutex_extensions_neg.cc: Remove. * testsuite/ext/profile/profiler_algos.cc: Remove. * testsuite/ext/profile/replace_new.cc: Remove. * testsuite/ext/throw_allocator/deallocate_global.cc: Remove preprocessor check for profile mode. * testsuite/ext/throw_allocator/deallocate_local.cc: Likewise. * testsuite/lib/libstdc++.exp (check_v3_target_profile_mode): Remove. (check_v3_target_normal_mode): Do not check for profile mode macro. * testsuite/libstdc++-prettyprinters/80276.cc: Remove dg-skip-if for profile mode. * testsuite/libstdc++-prettyprinters/compat.cc: Likewise. * testsuite/libstdc++-prettyprinters/cxx11.cc: Likewise. * testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise. * testsuite/libstdc++-prettyprinters/debug.cc: Likewise. * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise. * testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise. * testsuite/libstdc++-prettyprinters/simple.cc: Likewise. * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise. * testsuite/libstdc++-prettyprinters/whatis.cc: Likewise. * testsuite/libstdc++-prettyprinters/whatis2.cc: Likewise. From-SVN: r271120 |
||
Jonathan Wakely
|
0d09ca2550 |
Remove array_allocator extension, deprecated since 4.9.0
This type is not a conforming allocator, because it cannot be reliably rebound to allocate for a different type. The result of the rebind transformation still uses the same underlying std::tr1::array<T, 1> array, which may not be correctly aligned or even have elements the right size for the value_type of the rebound allocator. It has been deprecated for several years and should now be removed. * doc/xml/manual/allocator.xml: Remove documentation for array_allocator. * doc/xml/manual/evolution.xml: Document array_allocator removal. * doc/xml/manual/using.xml: Remove header from documentation. * include/Makefile.am: Remove <ext/array_allocator.h> header. * include/Makefile.in: Regenerate. * include/ext/array_allocator.h: Remove. * include/precompiled/extc++.h: Do not include removed header. * testsuite/ext/array_allocator/1.cc: Remove. * testsuite/ext/array_allocator/2.cc: Remove. * testsuite/ext/array_allocator/26875.cc: Remove. * testsuite/ext/array_allocator/3.cc: Remove. * testsuite/ext/array_allocator/check_deallocate_null.cc: Remove. * testsuite/ext/array_allocator/check_delete.cc: Remove. * testsuite/ext/array_allocator/check_new.cc: Remove. * testsuite/ext/array_allocator/variadic_construct.cc: Remove. * testsuite/ext/headers.cc: Do not include removed header. From-SVN: r271119 |
||
Tom Honermann
|
46ca1dd73c |
P0482R5 char8_t: New standard library tests
2019-02-19 Tom Honermann <tom@honermann.net> * testsuite/18_support/numeric_limits/char8_t.cc: New test cloned from char16_32_t.cc; validates numeric_limits<char8_t>. * testsuite/21_strings/basic_string/literals/types-char8_t.cc: New test cloned from types.cc; validates operator""s for char8_t returns u8string. * testsuite/21_strings/basic_string/literals/values-char8_t.cc: New test cloned from values.cc; validates construction and comparison of u8string values. * testsuite/21_strings/basic_string/requirements/ /explicit_instantiation/char8_t/1.cc: New test cloned from char16_t/1.cc; validates explicit instantiation of basic_string<char8_t>. * testsuite/21_strings/basic_string_view/literals/types-char8_t.cc: New test cloned from types.cc; validates operator""sv for char8_t returns u8string_view. * testsuite/21_strings/basic_string_view/literals/ values-char8_t.cc: New test cloned from values.cc; validates construction and comparison of u8string_view values. * testsuite/21_strings/basic_string_view/requirements/ explicit_instantiation/char8_t/1.cc: New test cloned from char16_t/1.cc; validates explicit instantiation of basic_string_view<char8_t>. * testsuite/21_strings/char_traits/requirements/char8_t/65049.cc: New test cloned from char16_t/65049.cc; validates that char_traits<char8_t> is not vulnerable to the concerns in PR65049. * testsuite/21_strings/char_traits/requirements/char8_t/ typedefs.cc: New test cloned from char16_t/typedefs.cc; validates that char_traits<char8_t> member typedefs are present and correct. * testsuite/21_strings/char_traits/requirements/ explicit_instantiation/char8_t/1.cc: New test cloned from char16_t/1.cc; validates explicit instantiation of char_traits<char8_t>. * testsuite/22_locale/codecvt/char16_t-char8_t.cc: New test cloned from char16_t.cc: validates codecvt<char16_t, char8_t, mbstate_t>. * testsuite/22_locale/codecvt/char32_t-char8_t.cc: New test cloned from char32_t.cc: validates codecvt<char32_t, char8_t, mbstate_t>. * testsuite/22_locale/codecvt/utf8-char8_t.cc: New test cloned from utf8.cc; validates codecvt<char16_t, char8_t, std::mbstate_t> and codecvt<char32_t, char8_t, std::mbstate_t>. * testsuite/27_io/filesystem/path/native/string-char8_t.cc: New test cloned from string.cc; validates filesystem::path construction from char8_t input. * testsuite/experimental/feat-char8_t.cc: New test; validates that the __cpp_lib_char8_t feature test macro is defined with the correct value. * testsuite/experimental/filesystem/path/native/string-char8_t.cc: New test cloned from string.cc; validates filesystem::path construction from char8_t input. * testsuite/experimental/string_view/literals/types-char8_t.cc: New test cloned from types.cc; validates operator""sv for char8_t returns u8string_view. * testsuite/experimental/string_view/literals/values-char8_t.cc: New test cloned from values.cc; validates construction and comparison of u8string_view values. * testsuite/experimental/string_view/requirements/ explicit_instantiation/char8_t/1.cc: New test cloned from char16_t/1.cc; validates explicit instantiation of basic_string_view<char8_t>. * testsuite/ext/char8_t/atomic-1.cc: New test; validates that ATOMIC_CHAR8_T_LOCK_FREE is not defined if char8_t support is not enabled. From-SVN: r269005 |
||
Jonathan Wakely
|
2104ca71da |
Fix tests that fail in C++2a mode
The nested typedefs in std::reference_wrapper are no longer present in C++2a mode, so skip the tests that check for them. The addition of the [[nodiscard]] attribute to a few functions causes some failures in tests that intentionally ignore the return value. Casting the result to void suppresses the new warnings. * testsuite/20_util/reference_wrapper/result_type.cc: Disable for C++2a. * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise. * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise. * testsuite/20_util/reference_wrapper/typedefs.cc: Likewise. * testsuite/30_threads/async/54297.cc: Suppress nodiscard warning. * testsuite/ext/array_allocator/26875.cc: Likewise. * testsuite/ext/pool_allocator/allocate_chunk.cc: Likewise. * testsuite/util/replacement_memory_operators.h: Likewise. * testsuite/util/testsuite_allocator.h: Likewise. From-SVN: r268355 |
||
Jakub Jelinek
|
a554497024 |
Update copyright years.
From-SVN: r267494 |
||
Jonathan Wakely
|
78ed0f80c3 |
Fix tests that use allocators with incorrect value types
As a GNU extension we allow containers to be instantiated with allocators that use a different value type from the container, and automatically rebind the allocator to the correct type. This extension is disabled in strict modes (when __STRICT_ANSI__ is defined, i.e. -std=c++NN dialects). These testcases unintentionally rely on the extension and so fail for strict modes. Tests which intentionally make use of the extension will still fail in strict dialects, but will be addressed in a later change. * testsuite/20_util/scoped_allocator/1.cc: Use allocator with correct value type for the container. * testsuite/23_containers/forward_list/cons/14.cc: Likewise. * testsuite/23_containers/map/56613.cc: Likewise. * testsuite/23_containers/unordered_map/55043.cc: Likewise. * testsuite/23_containers/unordered_map/allocator/copy.cc: Likewise. * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: Likewise. * testsuite/23_containers/unordered_map/allocator/minimal.cc: Likewise. * testsuite/23_containers/unordered_map/allocator/move.cc: Likewise. * testsuite/23_containers/unordered_map/allocator/move_assign.cc: Likewise. * testsuite/23_containers/unordered_map/allocator/noexcept.cc: Likewise. * testsuite/23_containers/unordered_map/cons/81891.cc: Likewise. * testsuite/23_containers/unordered_map/requirements/exception/ basic.cc: Likewise. * testsuite/23_containers/unordered_map/requirements/exception/ generation_prohibited.cc: Likewise. * testsuite/23_containers/unordered_map/requirements/exception/ propagation_consistent.cc: Likewise. * testsuite/23_containers/unordered_multimap/55043.cc: Likewise. * testsuite/23_containers/unordered_multimap/allocator/copy.cc: Likewise. * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc: Likewise. * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: Likewise. * testsuite/23_containers/unordered_multimap/allocator/move.cc: Likewise. * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc: Likewise. * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: Likewise. * testsuite/23_containers/unordered_multimap/requirements/exception/ basic.cc: Likewise. * testsuite/23_containers/unordered_multimap/requirements/exception/ generation_prohibited.cc: Likewise. * testsuite/23_containers/unordered_multimap/requirements/exception/ propagation_consistent.cc: Likewise. * testsuite/23_containers/unordered_multimap/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/ext/malloc_allocator/sanity.cc: Likewise. From-SVN: r265331 |
||
Jonathan Wakely
|
e7f2d0bdb5 |
Disable tests that only pass for GNU dialects
The airy and hypergeometric functions are non-standard extensions and are only defined for -std=gnu++NN dialects, not -std=c++NN ones. * ext/special_functions/airy_ai/check_nan.cc: Skip test for non-standard extension when a strict -std=c++NN dialect is used. * ext/special_functions/airy_ai/check_value.cc: Likewise. * ext/special_functions/airy_ai/compile.cc: Likewise. * ext/special_functions/airy_bi/check_nan.cc: Likewise. * ext/special_functions/airy_bi/check_value.cc: Likewise. * ext/special_functions/airy_bi/compile.cc: Likewise. * ext/special_functions/conf_hyperg/check_nan.cc: Likewise. * ext/special_functions/conf_hyperg/check_value.cc: Likewise. * ext/special_functions/conf_hyperg/compile.cc: Likewise. * ext/special_functions/hyperg/check_nan.cc: Likewise. * ext/special_functions/hyperg/check_value.cc: Likewise. * ext/special_functions/hyperg/compile.cc: Likewise. From-SVN: r265330 |
||
Jonathan Wakely
|
955fe731e3 |
Fix tests that fail when built with different options
* testsuite/20_util/duration/cons/2.cc: Add -ffloat-store to fix failure when compiled without optimisation. * testsuite/ext/profile/mutex_extensions_neg.cc: Prune additional errors caused by C++17 std::pmr alias templates. From-SVN: r265287 |
||
Jonathan Wakely
|
c7790bdbd9 |
Make ext allocators support heterogeneous equality comparison
The Allocator requirements include the ability to compare different specializations of the same allocator class template. This did not work for __gnu_cxx::new_allocator and other extension allocators. This patch replaces the equality operators for those allocators with inline friends that support heterogeneous comparisons. (I'm not changing all ext allocators because some are bit-rotted already). Additionally, the equality operators for comparing two std::allocator objects of the same type are now defined as inline friends. Those overloads don't need to be declared at namespace scope, because they aren't specified in the standard (but they're needed in this implementation to avoid ambiguities caused by the extra overloads defined for the base allocator type). * include/bits/allocator.h (operator==(const allocator<_Tp>&, const allocator<_Tp>)) (operator!=(const allocator<_Tp>&, const allocator<_Tp>)): Replace with inline friends. * include/ext/debug_allocator.h (operator==, operator!=): Replace with inline friend functions that compare to rebound allocators. * include/ext/malloc_allocator.h (operator==, operator!=): Likewise. * include/ext/new_allocator.h (operator==, operator!=): Likewise. * testsuite/ext/debug_allocator/eq.cc: New test. * testsuite/ext/ext_pointer/alloc_eq.cc: New test. * testsuite/ext/malloc_allocator/eq.cc: New test. * testsuite/ext/new_allocator/eq.cc: New test. From-SVN: r265036 |
||
Sandra Loosemore
|
6cec3c81a7 |
10.cc: Add dg-require-fileio.
2018-08-31 Sandra Loosemore <sandra@codesourcery.com> libstdc++-v3/ * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc: Add dg-require-fileio. * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc: Likewise. * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc: Likewise. * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc: Likewise. * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc: Likewise. * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc: Likewise. * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc: Likewise. * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc: Likewise. * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise. * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc: Likewise. * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: Likewise. * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc: Likewise. * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc: Likewise. * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc: Likewise. * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc: Likewise. * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc: Likewise. * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc: Likewise. * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc: Likewise. * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise. * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise. * testsuite/27_io/basic_ifstream/cons/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_ifstream/open/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc: Likewise. * testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc: Likewise. * testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise. * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise. * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise. * testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise. * testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise. * testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise. * testsuite/27_io/basic_ofstream/cons/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_ofstream/open/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc: Likewise. * testsuite/27_io/objects/wchar_t/10.cc: Likewise. * testsuite/27_io/objects/wchar_t/12048-1.cc: Likewise. * testsuite/27_io/objects/wchar_t/12048-2.cc: Likewise. * testsuite/27_io/objects/wchar_t/12048-3.cc: Likewise. * testsuite/27_io/objects/wchar_t/12048-4.cc: Likewise. * testsuite/27_io/objects/wchar_t/12048-5.cc: Likewise. * testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise. From-SVN: r264022 |
||
Jonathan Wakely
|
4a559e91b1 |
Fix __gnu_cxx::_Pointer_adapter for long long arithmetic
* include/ext/pointer.h (_Pointer_adapter): Define operators for pointer arithmetic using long long offsets. * testsuite/ext/ext_pointer/1.cc: Test pointer arithmetic using long long values. From-SVN: r263976 |
||
Jeremy Sawicki
|
3ffa55de60 |
Rope iterators: don't retain pointers when copied
Rope iterators sometimes contain pointers to an internal buffer inside the iterator itself. When such an iterator is copied, the copy incorrectly retains pointers to the original. This patch takes the simple approach of not copying the cached information when the internal buffer is being used, instead requiring it to be recomputed when the copied iterator is dereferenced. An alternative would be to adjust the pointers so they refer to the buffer in the copy. 2018-08-14 Jeremy Sawicki <jeremy-gcc@sawicki.us> * include/ext/rope (_Rope_iterator_base(const _Rope_iterator_base&)) (_Rope_const_iterator::operator=(const _Rope_const_iterator&)) (_Rope_iterator::operator=(const _Rope_iterator&)): Ensure copied/assigned rope iterators don't retain pointers to the iterator they were copied/assigned from. * testsuite/ext/rope/7.cc: New. From-SVN: r263534 |
||
Jonathan Wakely
|
49ba258864 |
Add missing dg-require-cstdint directives to tests
* testsuite/18_support/aligned_alloc/aligned_alloc.cc: Add dg-require-cstdint directive. * testsuite/20_util/allocator/overaligned.cc: Likewise. * testsuite/20_util/any/cons/aligned.cc: Likewise. * testsuite/20_util/monotonic_buffer_resource/allocate.cc: Likewise. * testsuite/20_util/monotonic_buffer_resource/deallocate.cc: Likewise. * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise. * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise. * testsuite/23_containers/list/modifiers/insert/25288.cc: Likewise. * testsuite/23_containers/set/allocator/move_assign.cc: Likewise. * testsuite/25_algorithms/make_heap/complexity.cc: Likewise. * testsuite/25_algorithms/pop_heap/complexity.cc: Require cstdint and random_device effective-target. * testsuite/25_algorithms/push_heap/complexity.cc: Likewise. * testsuite/25_algorithms/sample/1.cc: Require cstdint. * testsuite/25_algorithms/sample/2.cc: Likewise. * testsuite/25_algorithms/sort_heap/complexity.cc: Require cstdint and random_device. * testsuite/26_numerics/headers/random/types_std_c++0x.cc: Require cstdint. * testsuite/26_numerics/random/chi_squared_distribution/83833.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/requirements/ constexpr_data.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/requirements/ constexpr_functions.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/requirements/ constexpr_functions.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/requirements/ constexpr_data.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/requirements/ constexpr_functions.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/requirements/ constexpr_data.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/requirements/ constexpr_functions.cc: Likewise. * testsuite/26_numerics/random/pr60037-neg.cc: Likewise. * testsuite/26_numerics/random/seed_seq/cons/65631.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/requirements/ constexpr_data.cc: Add dg-require-cstdint directive. * testsuite/26_numerics/random/shuffle_order_engine/requirements/ constexpr_functions.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/requirements/ constexpr_data.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/requirements/ constexpr_functions.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/operators/ 64351.cc: Likewise. * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Likewise. * testsuite/experimental/algorithm/sample-2.cc: Likewise. * testsuite/experimental/algorithm/sample.cc: Likewise. * testsuite/experimental/algorithm/search.cc: Likewise. * testsuite/experimental/algorithm/shuffle.cc: Likewise. * testsuite/experimental/any/cons/aligned.cc: Likewise. * testsuite/experimental/memory_resource/new_delete_resource.cc: Likewise. * testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise. * testsuite/experimental/random/randint.cc: Likewise. * testsuite/experimental/source_location/1.cc: Likewise. * testsuite/ext/bitmap_allocator/overaligned.cc: Likewise. * testsuite/ext/malloc_allocator/overaligned.cc: Likewise. * testsuite/ext/mt_allocator/overaligned.cc: Likewise. * testsuite/ext/new_allocator/overaligned.cc: Likewise. * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise. * testsuite/ext/pool_allocator/overaligned.cc: Likewise. * testsuite/ext/throw_allocator/check_allocate_max_size.cc: Likewise. * testsuite/ext/throw_allocator/check_deallocate_null.cc: Likewise. * testsuite/ext/throw_allocator/check_delete.cc: Likewise. * testsuite/ext/throw_allocator/check_new.cc: Likewise. * testsuite/ext/throw_allocator/deallocate_global.cc: Likewise. * testsuite/ext/throw_allocator/deallocate_local.cc: Likewise. * testsuite/ext/throw_allocator/explicit_instantiation.cc: Likewise. * testsuite/ext/throw_allocator/variadic_construct.cc: Likewise. * testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Likewise. From-SVN: r263008 |
||
Jonathan Wakely
|
2b69e93cd1 |
Remove dg-require-cstdint directive from tests
Tests for components which are no longer dependent on _GLIBCXX_USE_C99_STDINT_TR1 do not need to require <cstdint>. * testsuite/18_support/numeric_limits/char16_32_t.cc: Qualify names from namespace std. * testsuite/20_util/align/2.cc: Remove dg-require-cstdint directive. * testsuite/20_util/duration/arithmetic/1.cc: Likewise. * testsuite/20_util/duration/arithmetic/2.cc: Likewise. * testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise. * testsuite/20_util/duration/arithmetic/dr934-1.cc: Likewise. * testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise. * testsuite/20_util/duration/comparison_operators/1.cc: Likewise. * testsuite/20_util/duration/cons/1.cc: Likewise. * testsuite/20_util/duration/cons/1_neg.cc: Likewise. * testsuite/20_util/duration/cons/2.cc: Likewise. * testsuite/20_util/duration/cons/54025.cc: Likewise. * testsuite/20_util/duration/cons/dr974_neg.cc: Likewise. * testsuite/20_util/duration/requirements/explicit_instantiation/ explicit_instantiation.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs-4.cc: Likewise. * testsuite/20_util/ratio/comparisons/comp1.cc: Likewise. * testsuite/20_util/ratio/comparisons/comp2.cc: Likewise. * testsuite/20_util/ratio/comparisons/comp3.cc: Likewise. * testsuite/20_util/ratio/cons/cons1.cc: Likewise. * testsuite/20_util/ratio/operations/45866.cc: Likewise. * testsuite/20_util/ratio/operations/47913.cc: Likewise. * testsuite/20_util/ratio/operations/53840.cc: Likewise. * testsuite/20_util/ratio/operations/ops1.cc: Likewise. * testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. * testsuite/20_util/system_clock/1.cc: Likewise. * testsuite/20_util/time_point/1.cc: Likewise. * testsuite/20_util/time_point/2.cc: Likewise. * testsuite/20_util/time_point/3.cc: Likewise. * testsuite/20_util/time_point/requirements/explicit_instantiation/ explicit_instantiation.cc: Likewise. * testsuite/21_strings/basic_string/requirements/ explicit_instantiation/char16_t/1.cc: Likewise. * testsuite/21_strings/basic_string/requirements/ explicit_instantiation/char32_t/1.cc: Likewise. * testsuite/21_strings/basic_string_view/requirements/ explicit_instantiation/char16_t/1.cc: Likewise. * testsuite/21_strings/basic_string_view/requirements/ explicit_instantiation/char32_t/1.cc: Likewise. * testsuite/21_strings/char_traits/requirements/ explicit_instantiation/char16_t/1.cc: Likewise. * testsuite/21_strings/char_traits/requirements/ explicit_instantiation/char32_t/1.cc: Likewise. * testsuite/21_strings/headers/string/types_std_c++0x.cc: Likewise. * testsuite/22_locale/codecvt/char16_t.cc: Likewise. * testsuite/22_locale/codecvt/char32_t.cc: Likewise. * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: Likewise. * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise. * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc: Likewise. * testsuite/22_locale/codecvt/utf8.cc: Likewise. * testsuite/23_containers/vector/bool/72847.cc: Likewise. * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise. * testsuite/experimental/string_view/requirements/ explicit_instantiation/char16_t/1.cc: Likewise. * testsuite/experimental/string_view/requirements/ explicit_instantiation/char32_t/1.cc: Likewise. * testsuite/ext/vstring/requirements/explicit_instantiation/char16_t/ 1.cc: Likewise. * testsuite/ext/vstring/requirements/explicit_instantiation/char32_t/ 1.cc: Likewise. From-SVN: r263005 |
||
Jonathan Wakely
|
977ac63eab |
P0935R0 Eradicating unnecessarily explicit default constructors
The param_type constructors of each random number distribution should mirror the constructors of the distribution itself, so make the same changes w.r.t explicit on default constructors. * include/bits/random.h (uniform_real_distribution::param_type) (normal_distribution::param_type, lognormal_distribution::param_type) (gamma_distribution::param_type, chi_squared_distribution::param_type) (cauchy_distribution::param_type, fisher_f_distribution::param_type) (student_t_distribution::param_type) (bernoulli_distribution::param_type) (binomial_distribution::param_type) (geometric_distribution::param_type) (negative_binomial_distribution::param_type) (poisson_distribution::param_type) (exponential_distribution::param_type) (weibull_distribution::param_type) (extreme_value_distribution::param_type): Add non-explicit default constructors. Remove default argument for first parameter of explicit constructors. * include/bits/uniform_int_dist.h (uniform_int_distribution::param_type): Likewise. * include/ext/random (beta_distribution::param_type, rice_distribution::param_type) (nakagami_distribution::param_type, pareto_distribution::param_type) (k_distribution::param_type, arcsine_distribution::param_type) (hoyt_distribution::param_type, triangular_distribution::param_type) (von_mises_distribution::param_type) (hypergeometric_distribution::param_type) (logistic_distribution::param_type) (uniform_inside_sphere_distribution::param_type): Likewise. (uniform_on_sphere_distribution::param_type): Make default constructor non-explicit. * testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc: Test param_type for non-explicit default constructor. * testsuite/26_numerics/random/binomial_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/cons/default.cc: Likewise. * testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise. * testsuite/ext/random/beta_distribution/cons/default.cc: Likewise. * testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise. * testsuite/ext/random/hypergeometric_distribution/cons/default.cc: Likewise. * testsuite/ext/random/k_distribution/cons/default.cc: Likewise. * testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise. * testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise. * testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise. * testsuite/ext/random/rice_distribution/cons/default.cc: Likewise. * testsuite/ext/random/triangular_distribution/cons/default.cc: Likewise. * testsuite/ext/random/uniform_inside_sphere_distribution/cons/default.cc: Likewise. * testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc: Likewise. * testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise. From-SVN: r261592 |
||
Jonathan Wakely
|
dd9db6f897 |
P0935R0 Eradicating unnecessarily explicit default constructors
Explicit default constructors are problematic, so this change removes them from <random> and <ext/random>, as per P0935R0. * include/bits/random.h (linear_congruential_engine) (mersenne_twister_engine, subtract_with_carry_engine, random_device) (uniform_real_distribution, normal_distribution) (lognormal_distribution, gamma_distribution, chi_squared_distribution) (cauchy_distribution, fisher_f_distribution, student_t_distribution) (bernoulli_distribution, binomial_distribution,geometric_distribution) (negative_binomial_distribution, exponential_distribution) (weibull_distribution, extreme_value_distribution): Add non-explicit default constructors. Remove default argument for first parameter of explicit constructors. (piecewise_constant_distribution, piecewise_linear_distribution): Make default constructor non-explicit. * include/bits/uniform_int_dist.h (uniform_int_distribution): Add non-explicit default constructors. Remove default argument for first parameter of explicit constructor. (simd_fast_mersenne_twister_engine, beta_distribution) (rice_distribution, nakagami_distribution, pareto_distribution) (k_distribution, arcsine_distribution, hoyt_distribution) (triangular_distribution, von_mises_distribution) (hypergeometric_distribution, logistic_distribution) (uniform_inside_sphere_distribution): Likewise. (uniform_on_sphere_distribution): Make default constructor non-explicit. * testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc: Test for non-explicit default constructor. Fix references to standard. * testsuite/26_numerics/random/binomial_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/cons/default.cc: Likewise. * testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise. * testsuite/ext/random/beta_distribution/cons/default.cc: Likewise. * testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise. * testsuite/ext/random/hypergeometric_distribution/cons/default.cc: Likewise. * testsuite/ext/random/k_distribution/cons/default.cc: Likewise. * testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise. * testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise. * testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise. * testsuite/ext/random/rice_distribution/cons/default.cc: Likewise. * testsuite/ext/random/triangular_distribution/cons/default.cc: Likewise. * testsuite/ext/random/uniform_inside_sphere_distribution/cons/default.cc: Likewise. * testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc: Likewise. * testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise. * testsuite/util/testsuite_common_types.h (implicitly_default_constructible): New helper. From-SVN: r261522 |
||
Jonathan Wakely
|
5a7960da41 |
PR libstdc++/85749 constrain seed sequences for random number engines
Constrain constructors and member functions of random number engines so that functions taking seed sequences can only be called with types that meet the seed sequence requirements. PR libstdc++/85749 * include/bits/random.h (__detail::__is_seed_seq): New SFINAE helper. (linear_congruential_engine, mersenne_twister_engine) (subtract_with_carry_engine, discard_block_engine) (independent_bits_engine, shuffle_order_engine): Use __is_seed_seq to constrain function templates taking seed sequences. * include/bits/random.tcc (linear_congruential_engine::seed(_Sseq&)) (mersenne_twister_engine::seed(_Sseq&)) (subtract_with_carry_engine::seed(_Sseq&)): Change return types to match declarations. * include/ext/random (simd_fast_mersenne_twister_engine): Use __is_seed_seq to constrain function templates taking seed sequences. * include/ext/random.tcc (simd_fast_mersenne_twister_engine::seed): Change return type to match declaration. * testsuite/26_numerics/random/discard_block_engine/cons/seed_seq2.cc: New. * testsuite/26_numerics/random/independent_bits_engine/cons/ seed_seq2.cc: New. * testsuite/26_numerics/random/linear_congruential_engine/cons/ seed_seq2.cc: New. * testsuite/26_numerics/random/mersenne_twister_engine/cons/ seed_seq2.cc: New. * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lineno. * testsuite/26_numerics/random/shuffle_order_engine/cons/seed_seq2.cc: New. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ seed_seq2.cc: New. * testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/ seed_seq2.cc: New. From-SVN: r260263 |
||
Christophe Lyon
|
a46c4287bb |
[libstdc++][testsuite] Fix dg-options/dg-add-options order
2018-01-19 Christophe Lyon <christophe.lyon@linaro.org> * testsuite/ext/special_functions/airy_ai/check_nan.cc: Fix dg-options and dg-add-options order. * testsuite/ext/special_functions/airy_bi/check_nan.cc: Likewise. * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise. * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise. * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise. * testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise. * testsuite/special_functions/03_beta/check_nan.cc: Likewise. * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise. * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise. * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise. * testsuite/special_functions/06_comp_ellint_3/pr66689.cc: Likewise. * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise. * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise. * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise. * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise. * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise. * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise. * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise. * testsuite/special_functions/13_ellint_3/pr66689.cc: Likewise. * testsuite/special_functions/14_expint/check_nan.cc: Likewise. * testsuite/special_functions/15_hermite/check_nan.cc: Likewise. * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise. * testsuite/special_functions/17_legendre/check_nan.cc: Likewise. * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise. * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise. * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise. * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise. From-SVN: r256879 |
||
Jakub Jelinek
|
85ec4feb11 |
Update copyright years.
From-SVN: r256169 |
||
David Edelsohn
|
d3861707eb |
re PR libstdc++/83120 (ext/special_functions/hyperg failure on AIX)
PR libstdc++/83120 * testsuite/ext/special_functions/hyperg/check_value.cc: Add -ffp-contract=off. Add -ffloat-store for m68* and ia32. * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/check_value.cc: Same. From-SVN: r255483 |
||
Edward Smith-Rowland
|
b46881363f |
PR libstdc++/pr66689 - comp_ellint_3 and ellint_3 return garbage values
2017-11-18 Edward Smith-Rowland <3dw4rd@verizon.net> PR libstdc++/pr66689 - comp_ellint_3 and ellint_3 return garbage values * include/tr1/ell_integral.tcc: Correct the nu sign convention in ellint_3 and comp_ellint_3. * testsuite/tr1/5_numerical_facilities/special_functions/ 06_comp_ellint_3/check_value.cc: Regen with correct values. * testsuite/tr1/5_numerical_facilities/special_functions/ 14_ellint_3/check_value.cc: Ditto. * testsuite/special_functions/06_comp_ellint_3/check_value.cc: Ditto. * testsuite/special_functions/13_ellint_3/check_value.cc: Ditto. * testsuite/tr1/5_numerical_facilities/special_functions/ 01_assoc_laguerre/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 02_assoc_legendre/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 03_beta/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 04_comp_ellint_1/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 05_comp_ellint_2/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 07_conf_hyperg/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 08_cyl_bessel_i/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 09_cyl_bessel_j/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 10_cyl_bessel_k/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 11_cyl_neumann/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 12_ellint_1/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 13_ellint_2/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 15_expint/check_value_neg.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 16_hermite/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 17_hyperg/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 18_laguerre/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 19_legendre/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 20_riemann_zeta/check_value_neg.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 21_sph_bessel/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 22_sph_legendre/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 23_sph_neumann/check_value.cc: Regen. * testsuite/ext/special_functions/conf_hyperg/check_value.cc: Regen. * testsuite/ext/special_functions/hyperg/check_value.cc: Regen. * testsuite/special_functions/01_assoc_laguerre/check_value.cc: Regen. * testsuite/special_functions/02_assoc_legendre/check_value.cc: Regen. * testsuite/special_functions/03_beta/check_value.cc: Regen. * testsuite/special_functions/04_comp_ellint_1/check_value.cc: Regen. * testsuite/special_functions/05_comp_ellint_2/check_value.cc: Regen. * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Regen. * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Regen. * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Regen. * testsuite/special_functions/10_cyl_neumann/check_value.cc: Regen. * testsuite/special_functions/11_ellint_1/check_value.cc: Regen. * testsuite/special_functions/12_ellint_2/check_value.cc: Regen. * testsuite/special_functions/14_expint/check_value.cc: Regen. * testsuite/special_functions/15_hermite/check_value.cc: Regen. * testsuite/special_functions/16_laguerre/check_value.cc: Regen. * testsuite/special_functions/17_legendre/check_value.cc: Regen. * testsuite/special_functions/18_riemann_zeta/check_value.cc: Regen. * testsuite/special_functions/19_sph_bessel/check_value.cc: Regen. * testsuite/special_functions/20_sph_legendre/check_value.cc: Regen. * testsuite/special_functions/21_sph_neumann/check_value.cc: Regen. * testsuite/tr1/5_numerical_facilities/special_functions/ 06_comp_ellint_3/pr66689.cc: New. * testsuite/tr1/5_numerical_facilities/special_functions/ 14_ellint_3/pr66689.cc: New. * testsuite/special_functions/06_comp_ellint_3/pr66689.cc: New. * testsuite/special_functions/13_ellint_3/pr66689.cc: New. From-SVN: r254924 |
||
Edward Smith-Rowland
|
a7a389d6ee |
specfun.h: Expose airy_ai and airy_bi.
2017-11-18 Edward Smith-Rowland <3dw4rd@verizon.net> * include/bits/specfun.h: Expose airy_ai and airy_bi. * include/tr1/modified_bessel_func.tcc: Treat NaN and inf arg, return. * testsuite/ext/special_functions/airy_ai/check_nan.cc: New. * testsuite/ext/special_functions/airy_ai/check_value.cc: New. * testsuite/ext/special_functions/airy_ai/compile.cc: New. * testsuite/ext/special_functions/airy_bi/check_nan.cc: New. * testsuite/ext/special_functions/airy_bi/check_value.cc: New. * testsuite/ext/special_functions/airy_bi/compile.cc: New. From-SVN: r254917 |
||
Jakub Jelinek
|
7b9361409d |
invoke.texi: Document -std=c++17 and -std=gnu++17 and document c++1z and gnu++1z as deprecated.
* doc/invoke.texi: Document -std=c++17 and -std=gnu++17 and document c++1z and gnu++1z as deprecated. Change other references to -std=c++1z to -std=c++17 and -std=gnu++1z to -std=gnu++17. Change -Wc++1z-compat to -Wc++17-compat. * doc/cpp.texi: Document -std=c++17 defines __cplusplus 201703L. * dwarf2out.c (highest_c_language): Handle C++17. (gen_compile_unit_die): Likewise. c-family/ * c.opt (Wc++1z-compat): Change from option to undocumented alias. (Wc++17-compat): Change from undocumented alias to option. (Wnoexcept-type): Enable by Wc++17-compat instead of Wc++1z-compat, change C++1z to C++17 in description. (std=c++1z, std=gnu++1z): Change from option to undocumented deprecated alias. (std=c++17, std=gnu++17): Change from undocumented alias to option. Adjust description. * c-common.h (enum cxx_dialect): Rename cxx1z to cxx17. * c-opts.c (set_std_cxx1z): Rename to ... (set_std_cxx17): ... this. (c_common_handle_option): Rename OPT_std_c__1z to OPT_std_c__17 and OPT_std_gnu__1z to OPT_std_gnu__17. Adjust set_std_cxx1z caller. (c_common_post_options): Use cxx17 instead of cxx1z. Adjust comments. cp/ * decl.c (redeclaration_error_message): Use cxx17 instead of cxx1z, adjust diagnostics refering to C++1z or -std=gnu++1z or -std=c++1z to C++17 or -std=gnu++17 or -std=c++17. Adjust comments. (cxx_init_decl_processing, next_initializable_field, is_direct_enum_init, check_initializer, cp_finish_decl, mark_inline_variable, grokdeclarator, grokparms, xref_basetypes, finish_function): Likewise. * cp-tree.h (DECL_INLINE_VAR_P): Likewise. * pt.c (mark_template_parm, convert_nontype_argument, instantiate_class_template_1, type_unification_real, unify, get_partial_spec_bindings, dependent_type_p_r): Likewise. * typeck.c (cp_build_unary_op): Likewise. * constexpr.c (var_in_maybe_constexpr_fn): Likewise. * call.c (build_user_type_conversion_1, build_over_call, build_special_member_call): Likewise. * lambda.c (begin_lambda_type): Likewise. * typeck2.c (process_init_constructor_record): Likewise. * class.c (build_base_field, finalize_literal_type_property, explain_non_literal_class): Likewise. * parser.c (cp_parser_diagnose_invalid_type_name, cp_parser_primary_expression, cp_parser_lambda_introducer, cp_parser_lambda_declarator_opt, cp_parser_selection_statement, cp_convert_range_for, cp_parser_perform_range_for_lookup, cp_parser_decomposition_declaration, cp_parser_linkage_specification, cp_parser_static_assert, cp_parser_simple_type_specifier, cp_parser_namespace_definition, cp_parser_using_declaration, cp_parser_init_declarator, cp_parser_type_parameter_key, cp_parser_exception_specification_opt, cp_parser_std_attribute_spec, cp_parser_constructor_declarator_p): Likewise. * mangle.c (struct globals): Rename need_cxx1z_warning to need_cxx17_warning. (write_exception_spec, start_mangling, mangle_decl): Likewise. * Make-lang.in (check-c++1z): Rename to check-c++17, depend on it. (check-c++17): New goal. Use 17 instead of 1z. (check-c++-all): Use 17 instead of 1z. testsuite/ * lib/g++-dg.exp (g++-dg-runtest): Use 17 instead of 1z. * lib/target-supports.exp (check_effective_target_c++14): Use check_effective_target_c++17 instead of check_effective_target_c++1z. (check_effective_target_c++14_down): Likewise. (check_effective_target_c++1z_only): Rename to ... (check_effective_target_c++17_only): ... this. (check_effective_target_c++1z): Rename to ... (check_effective_target_c++17): ... this. * g++.dg/debug/dwarf2/inline-var-1.C: Use -std=c++17 or -std=gnu++17 instead of -std=c++1z or -std=gnu++1z. Use c++17 instead of c++1z and c++17_only instead of c++1z_only. Adjust expected diagnostics and comments refering to 1z to 17. * g++.dg/debug/dwarf2/inline-var-2.C: Likewise. * g++.dg/template/partial5.C: Likewise. * g++.dg/template/nontype8.C: Likewise. * g++.dg/cpp1z/noexcept-type5.C: Likewise. * g++.dg/cpp1z/nontype3a.C: Likewise. * g++.dg/cpp1z/constexpr-lambda4.C: Likewise. * g++.dg/cpp1z/noexcept-type16.C: Likewise. * g++.dg/cpp1z/class-deduction32.C: Likewise. * g++.dg/cpp1z/pr78771.C: Likewise. * g++.dg/cpp1z/elide1.C: Likewise. * g++.dg/cpp1z/fold3.C: Likewise. * g++.dg/cpp1z/class-deduction2.C: Likewise. * g++.dg/cpp1z/noexcept-type12.C: Likewise. * g++.dg/cpp1z/inline-var2.C: Likewise. * g++.dg/cpp1z/eval-order2.C: Likewise. * g++.dg/cpp1z/decomp21.C: Likewise. * g++.dg/cpp1z/constexpr-lambda11.C: Likewise. * g++.dg/cpp1z/constexpr-lambda9.C: Likewise. * g++.dg/cpp1z/utf8-neg.C: Likewise. * g++.dg/cpp1z/class-deduction41.C: Likewise. * g++.dg/cpp1z/class-deduction23.C: Likewise. * g++.dg/cpp1z/nodiscard3.C: Likewise. * g++.dg/cpp1z/static_assert-nomsg.C: Likewise. * g++.dg/cpp1z/noexcept-type9.C: Likewise. * g++.dg/cpp1z/class-deduction21.C: Likewise. * g++.dg/cpp1z/range-for1.C: Likewise. * g++.dg/cpp1z/init-statement4.C: Likewise. * g++.dg/cpp1z/udlit-utf8char.C: Likewise. * g++.dg/cpp1z/decomp30.C: Likewise. * g++.dg/cpp1z/class-deduction39.C: Likewise. * g++.dg/cpp1z/register2.C: Likewise. * g++.dg/cpp1z/decomp9.C: Likewise. * g++.dg/cpp1z/regress1.C: Likewise. * g++.dg/cpp1z/direct-enum-init1.C: Likewise. * g++.dg/cpp1z/class-deduction30.C: Likewise. * g++.dg/cpp1z/abbrev2.C: Likewise. * g++.dg/cpp1z/nontype-auto6.C: Likewise. * g++.dg/cpp1z/regress2.C: Likewise. * g++.dg/cpp1z/decomp16.C: Likewise. * g++.dg/cpp1z/bool-increment1.C: Likewise. * g++.dg/cpp1z/aligned-new1.C: Likewise. * g++.dg/cpp1z/decomp3.C: Likewise. * g++.dg/cpp1z/register1.C: Likewise. * g++.dg/cpp1z/namespace-attribs.C: Likewise. * g++.dg/cpp1z/class-deduction1.C: Likewise. * g++.dg/cpp1z/decomp10.C: Likewise. * g++.dg/cpp1z/constexpr-if11.C: Likewise. * g++.dg/cpp1z/constexpr-lambda10.C: Likewise. * g++.dg/cpp1z/decomp27.C: Likewise. * g++.dg/cpp1z/noexcept-type2.C: Likewise. * g++.dg/cpp1z/constexpr-lambda6.C: Likewise. * g++.dg/cpp1z/class-deduction9.C: Likewise. * g++.dg/cpp1z/attributes-enum-1.C: Likewise. * g++.dg/cpp1z/decomp11.C: Likewise. * g++.dg/cpp1z/aligned-new3.C: Likewise. * g++.dg/cpp1z/utf8-2.C: Likewise. * g++.dg/cpp1z/lambda-this3.C: Likewise. * g++.dg/cpp1z/decomp-constexpr1.C: Likewise. * g++.dg/cpp1z/byte1.C: Likewise. * g++.dg/cpp1z/nontype-auto9.C: Likewise. * g++.dg/cpp1z/aggr-base4.C: Likewise. * g++.dg/cpp1z/constexpr-lambda1.C: Likewise. * g++.dg/cpp1z/nontype-auto3.C: Likewise. * g++.dg/cpp1z/utf8-2a.C: Likewise. * g++.dg/cpp1z/constexpr-lambda7.C: Likewise. * g++.dg/cpp1z/aggr-base6.C: Likewise. * g++.dg/cpp1z/cplusplus.C: Likewise. * g++.dg/cpp1z/class-deduction20.C: Likewise. * g++.dg/cpp1z/aggr-base2.C: Likewise. * g++.dg/cpp1z/class-deduction6.C: Likewise. * g++.dg/cpp1z/noexcept-type3.C: Likewise. * g++.dg/cpp1z/class-deduction31.C: Likewise. * g++.dg/cpp1z/class-deduction25.C: Likewise. * g++.dg/cpp1z/class-deduction18.C: Likewise. * g++.dg/cpp1z/fold9.C: Likewise. * g++.dg/cpp1z/noexcept-type8.C: Likewise. * g++.dg/cpp1z/abbrev1.C: Likewise. * g++.dg/cpp1z/constexpr-if10.C: Likewise. * g++.dg/cpp1z/utf8.C: Likewise. * g++.dg/cpp1z/noexcept-type7.C: Likewise. * g++.dg/cpp1z/aggr-base3.C: Likewise. * g++.dg/cpp1z/constexpr-lambda8.C: Likewise. * g++.dg/cpp1z/init-statement2.C: Likewise. * g++.dg/cpp1z/nontype-auto4.C: Likewise. * g++.dg/cpp1z/constexpr-if12.C: Likewise. * g++.dg/cpp1z/class-deduction40.C: Likewise. * g++.dg/cpp1z/nontype3.C: Likewise. * g++.dg/cpp1z/class-deduction14.C: Likewise. * g++.dg/cpp1z/fold7.C: Likewise. * g++.dg/cpp1z/nontype2.C: Likewise. * g++.dg/cpp1z/class-deduction15.C: Likewise. * g++.dg/cpp1z/nested-namespace-def1.C: Likewise. * g++.dg/cpp1z/class-deduction13.C: Likewise. * g++.dg/cpp1z/aligned-new7.C: Likewise. * g++.dg/cpp1z/noexcept-type1.C: Likewise. * g++.dg/cpp1z/nontype1.C: Likewise. * g++.dg/cpp1z/init-statement5.C: Likewise. * g++.dg/cpp1z/nontype-auto2.C: Likewise. * g++.dg/cpp1z/decomp17.C: Likewise. * g++.dg/cpp1z/fold4.C: Likewise. * g++.dg/cpp1z/constexpr-lambda2.C: Likewise. * g++.dg/cpp1z/fold7a.C: Likewise. * g++.dg/cpp1z/nontype-auto5.C: Likewise. * g++.dg/cpp1z/init-statement7.C: Likewise. * g++.dg/cpp1z/aggr-base5.C: Likewise. * g++.dg/cpp1z/constexpr-lambda5.C: Likewise. * g++.dg/cpp1z/pr79143.C: Likewise. * g++.dg/cpp1z/class-deduction38.C: Likewise. * g++.dg/cpp1z/nontype-auto8.C: Likewise. * g++.dg/cpp1z/class-deduction12.C: Likewise. * g++.dg/cpp1z/decomp20.C: Likewise. * g++.dg/cpp1z/class-deduction22.C: Likewise. * g++.dg/cpp1z/class-deduction29.C: Likewise. * g++.dg/cpp1z/class-deduction8.C: Likewise. * g++.dg/cpp1z/class-deduction43.C: Likewise. * g++.dg/cpp1z/feat-cxx1z.C: Likewise. * g++.dg/cpp1z/fold8.C: Likewise. * g++.dg/cpp1z/init-statement3.C: Likewise. * g++.dg/cpp1z/nontype-auto10.C: Likewise. * g++.dg/cpp1z/class-deduction36.C: Likewise. * g++.dg/cpp1z/noexcept-type17.C: Likewise. * g++.dg/cpp1z/fallthrough1.C: Likewise. * g++.dg/cpp1z/fold1.C: Likewise. * g++.dg/cpp1z/class-deduction26.C: Likewise. * g++.dg/cpp1z/fold-ice1.C: Likewise. * g++.dg/cpp1z/fold5.C: Likewise. * g++.dg/cpp1z/class-deduction34.C: Likewise. * g++.dg/cpp1z/noexcept-type6.C: Likewise. * g++.dg/cpp1z/class-deduction7.C: Likewise. * g++.dg/cpp1z/class-deduction16.C: Likewise. * g++.dg/cpp1z/class-deduction10.C: Likewise. * g++.dg/cpp1z/eval-order3.C: Likewise. * g++.dg/cpp1z/constexpr-lambda13.C: Likewise. * g++.dg/cpp1z/aggr-base2a.C: Likewise. * g++.dg/cpp1z/nontype-auto1.C: Likewise. * g++.dg/cpp1z/constexpr-lambda3.C: Likewise. * g++.dg/cpp1z/nontype-auto7.C: Likewise. * g++.dg/cpp1z/decomp15.C: Likewise. * g++.dg/cpp1z/noexcept-type4.C: Likewise. * g++.dg/cpp1z/fold-mangle.C: Likewise. * g++.dg/cpp1z/class-deduction35.C: Likewise. * g++.dg/cpp1z/decomp4.C: Likewise. * g++.dg/cpp1z/class-deduction42.C: Likewise. * g++.dg/cpp1z/init-statement8.C: Likewise. * g++.dg/cpp1z/inline-var1a.C: Likewise. * g++.dg/cpp1z/init-statement6.C: Likewise. * g++.dg/cpp1z/class-deduction17.C: Likewise. * g++.dg/cpp1z/class-deduction28.C: Likewise. * g++.dg/cpp1z/class-deduction27.C: Likewise. * g++.dg/cpp1z/decomp-bitfield1.C: Likewise. * g++.dg/cpp1z/attributes-enum-1a.C: Likewise. * g++.dg/cpp1z/class-deduction11.C: Likewise. * g++.dg/cpp1z/constexpr-lambda12.C: Likewise. * g++.dg/cpp1z/init-statement9.C: Likewise. * g++.dg/cpp1z/class-deduction19.C: Likewise. * g++.dg/cpp1z/class-deduction5.C: Likewise. * g++.dg/cpp1z/fold2.C: Likewise. * g++.dg/cpp1z/class-deduction33.C: Likewise. * g++.dg/cpp1z/class-deduction24.C: Likewise. * g++.dg/cpp1z/aggr-base1.C: Likewise. * g++.dg/cpp1z/fold6.C: Likewise. * g++.dg/cpp1z/decomp12.C: Likewise. * g++.dg/cpp1z/class-deduction4.C: Likewise. * g++.dg/cpp1z/inline-var1.C: Likewise. * g++.dg/cpp1z/aligned-new2.C: Likewise. * g++.dg/cpp1z/class-deduction3.C: Likewise. * g++.dg/other/error3.C: Likewise. * g++.dg/init/new25.C: Likewise. * g++.dg/init/new13.C: Likewise. * g++.dg/tls/diag-2.C: Likewise. * g++.dg/tls/diag-4.C: Likewise. * g++.dg/opt/noreturn-1.C: Likewise. * g++.dg/eh/async-unwind2.C: Likewise. * g++.dg/eh/spec9.C: Likewise. * g++.dg/eh/spec7.C: Likewise. * g++.dg/eh/template1.C: Likewise. * g++.dg/eh/cond4.C: Likewise. * g++.dg/eh/pr41819.C: Likewise. * g++.dg/eh/delete1.C: Likewise. * g++.dg/eh/spec3.C: Likewise. * g++.dg/eh/forced4.C: Likewise. * g++.dg/eh/spec2.C: Likewise. * g++.dg/eh/shadow1.C: Likewise. * g++.dg/eh/pr38662.C: Likewise. * g++.dg/eh/ehopt1.C: Likewise. * g++.dg/eh/spec8.C: Likewise. * g++.dg/eh/init-temp2.C: Likewise. * g++.dg/rtti/crash3.C: Likewise. * g++.dg/warn/Wreturn-type-3.C: Likewise. * g++.dg/warn/register-parm-1.C: Likewise. * g++.dg/warn/register-var-2.C: Likewise. * g++.dg/gcov/gcov-7.C: Likewise. * g++.dg/tree-ssa/pr45605.C: Likewise. * g++.dg/cpp/pr23827_cxx98_neg.C: Likewise. * g++.dg/lookup/exception1.C: Likewise. * g++.dg/ubsan/pr79589.C: Likewise. * g++.dg/tm/pr47340.C: Likewise. * g++.dg/tm/pr46567.C: Likewise. * g++.dg/expr/bitfield5.C: Likewise. * g++.dg/expr/bool1.C: Likewise. * g++.dg/expr/lval3.C: Likewise. * g++.dg/expr/lval4.C: Likewise. * g++.dg/expr/bitfield4.C: Likewise. * g++.dg/expr/bitfield6.C: Likewise. * g++.dg/expr/bool3.C: Likewise. * g++.dg/ext/has_nothrow_constructor.C: Likewise. * g++.dg/ext/has_nothrow_copy-7.C: Likewise. * g++.dg/ext/has_nothrow_copy-1.C: Likewise. * g++.dg/ext/has_nothrow_copy-2.C: Likewise. * g++.dg/ext/has_nothrow_copy-4.C: Likewise. * g++.dg/ext/has_nothrow_copy-5.C: Likewise. * g++.dg/ext/has_nothrow_copy-6.C: Likewise. * g++.dg/ext/has_nothrow_assign.C: Likewise. * g++.dg/parse/register1.C: Likewise. * g++.dg/parse/error15.C: Likewise. * g++.dg/parse/linkage2.C: Likewise. * g++.dg/concepts/intro2.C: Likewise. * g++.dg/concepts/class.C: Likewise. * g++.dg/concepts/traits1.C: Likewise. * g++.dg/concepts/req5.C: Likewise. * g++.dg/concepts/var-concept5.C: Likewise. * g++.dg/concepts/fn-concept2.C: Likewise. * g++.dg/concepts/traits2.C: Likewise. * g++.dg/concepts/placeholder2.C: Likewise. * g++.dg/concepts/class6.C: Likewise. * g++.dg/concepts/memtmpl1.C: Likewise. * g++.dg/concepts/friend2.C: Likewise. * g++.dg/concepts/template-parm3.C: Likewise. * g++.dg/concepts/template-parm10.C: Likewise. * g++.dg/concepts/explicit-spec1.C: Likewise. * g++.dg/concepts/explicit-spec3.C: Likewise. * g++.dg/concepts/var-templ2.C: Likewise. * g++.dg/concepts/intro5.C: Likewise. * g++.dg/concepts/deduction-constraint1.C: Likewise. * g++.dg/concepts/iconv1.C: Likewise. * g++.dg/concepts/constrained-parm.C: Likewise. * g++.dg/concepts/template-template-parm1.C: Likewise. * g++.dg/concepts/var-concept3.C: Likewise. * g++.dg/concepts/class3.C: Likewise. * g++.dg/concepts/memfun2.C: Likewise. * g++.dg/concepts/req1.C: Likewise. * g++.dg/concepts/disjunction1.C: Likewise. * g++.dg/concepts/req17.C: Likewise. * g++.dg/concepts/pr65848.C: Likewise. * g++.dg/concepts/placeholder4.C: Likewise. * g++.dg/concepts/decl-diagnose.C: Likewise. * g++.dg/concepts/intro7.C: Likewise. * g++.dg/concepts/pr68683.C: Likewise. * g++.dg/concepts/partial-spec4.C: Likewise. * g++.dg/concepts/template-parm5.C: Likewise. * g++.dg/concepts/explicit-inst1.C: Likewise. * g++.dg/concepts/class-deduction1.C: Likewise. * g++.dg/concepts/class1.C: Likewise. * g++.dg/concepts/req15.C: Likewise. * g++.dg/concepts/memfun.C: Likewise. * g++.dg/concepts/pr68434.C: Likewise. * g++.dg/concepts/inherit-ctor4.C: Likewise. * g++.dg/concepts/partial-spec6.C: Likewise. * g++.dg/concepts/var-templ1.C: Likewise. * g++.dg/concepts/template-parm8.C: Likewise. * g++.dg/concepts/explicit-inst3.C: Likewise. * g++.dg/concepts/class4.C: Likewise. * g++.dg/concepts/req6.C: Likewise. * g++.dg/concepts/fn8.C: Likewise. * g++.dg/concepts/class5.C: Likewise. * g++.dg/concepts/placeholder5.C: Likewise. * g++.dg/concepts/req16.C: Likewise. * g++.dg/concepts/req10.C: Likewise. * g++.dg/concepts/var-concept2.C: Likewise. * g++.dg/concepts/auto3.C: Likewise. * g++.dg/concepts/generic-fn-err.C: Likewise. * g++.dg/concepts/pr65552.C: Likewise. * g++.dg/concepts/partial-concept-id2.C: Likewise. * g++.dg/concepts/fn1.C: Likewise. * g++.dg/concepts/partial-spec.C: Likewise. * g++.dg/concepts/template-parm12.C: Likewise. * g++.dg/concepts/diagnostic1.C: Likewise. * g++.dg/concepts/intro1.C: Likewise. * g++.dg/concepts/explicit-inst4.C: Likewise. * g++.dg/concepts/req18.C: Likewise. * g++.dg/concepts/explicit-spec5.C: Likewise. * g++.dg/concepts/var-concept6.C: Likewise. * g++.dg/concepts/fn9.C: Likewise. * g++.dg/concepts/req2.C: Likewise. * g++.dg/concepts/template-parm7.C: Likewise. * g++.dg/concepts/req14.C: Likewise. * g++.dg/concepts/template-parm6.C: Likewise. * g++.dg/concepts/variadic4.C: Likewise. * g++.dg/concepts/fn6.C: Likewise. * g++.dg/concepts/req-neg1.C: Likewise. * g++.dg/concepts/alias3.C: Likewise. * g++.dg/concepts/expression2.C: Likewise. * g++.dg/concepts/partial-spec3.C: Likewise. * g++.dg/concepts/expression3.C: Likewise. * g++.dg/concepts/memfun-err.C: Likewise. * g++.dg/concepts/pr66091.C: Likewise. * g++.dg/concepts/explicit-spec2.C: Likewise. * g++.dg/concepts/equiv.C: Likewise. * g++.dg/concepts/friend1.C: Likewise. * g++.dg/concepts/fn4.C: Likewise. * g++.dg/concepts/var-templ3.C: Likewise. * g++.dg/concepts/explicit-inst2.C: Likewise. * g++.dg/concepts/alias2.C: Likewise. * g++.dg/concepts/regress/alias-decl-42.C: Likewise. * g++.dg/concepts/placeholder6.C: Likewise. * g++.dg/concepts/fn10.C: Likewise. * g++.dg/concepts/req3.C: Likewise. * g++.dg/concepts/variadic2.C: Likewise. * g++.dg/concepts/pr65636.C: Likewise. * g++.dg/concepts/intro6.C: Likewise. * g++.dg/concepts/class2.C: Likewise. * g++.dg/concepts/fn2.C: Likewise. * g++.dg/concepts/req20.C: Likewise. * g++.dg/concepts/req8.C: Likewise. * g++.dg/concepts/placeholder1.C: Likewise. * g++.dg/concepts/pr65854.C: Likewise. * g++.dg/concepts/member-concept.C: Likewise. * g++.dg/concepts/template-parm2.C: Likewise. * g++.dg/concepts/variadic1.C: Likewise. * g++.dg/concepts/fn7.C: Likewise. * g++.dg/concepts/intro4.C: Likewise. * g++.dg/concepts/req13.C: Likewise. * g++.dg/concepts/inherit-ctor3.C: Likewise. * g++.dg/concepts/explicit-spec6.C: Likewise. * g++.dg/concepts/auto1.C: Likewise. * g++.dg/concepts/alias1.C: Likewise. * g++.dg/concepts/fn-concept1.C: Likewise. * g++.dg/concepts/template-parm11.C: Likewise. * g++.dg/concepts/explicit-spec4.C: Likewise. * g++.dg/concepts/partial-concept-id1.C: Likewise. * g++.dg/concepts/req9.C: Likewise. * g++.dg/concepts/req4.C: Likewise. * g++.dg/concepts/pr65681.C: Likewise. * g++.dg/concepts/req7.C: Likewise. * g++.dg/concepts/req12.C: Likewise. * g++.dg/concepts/fn5.C: Likewise. * g++.dg/concepts/alias4.C: Likewise. * g++.dg/concepts/generic-fn.C: Likewise. * g++.dg/concepts/feature-macro.C: Likewise. * g++.dg/concepts/req19.C: Likewise. * g++.dg/concepts/placeholder3.C: Likewise. * g++.dg/concepts/intro3.C: Likewise. * g++.dg/concepts/partial-spec5.C: Likewise. * g++.dg/concepts/template-parm4.C: Likewise. * g++.dg/concepts/dr1430.C: Likewise. * g++.dg/concepts/pr65634.C: Likewise. * g++.dg/concepts/var-concept4.C: Likewise. * g++.dg/concepts/pr67249.C: Likewise. * g++.dg/concepts/expression.C: Likewise. * g++.dg/concepts/pr65575.C: Likewise. * g++.dg/concepts/partial-spec2.C: Likewise. * g++.dg/concepts/template-parm9.C: Likewise. * g++.dg/concepts/inherit-ctor1.C: Likewise. * g++.dg/concepts/equiv2.C: Likewise. * g++.dg/concepts/req11.C: Likewise. * g++.dg/concepts/template-parm1.C: Likewise. * g++.dg/concepts/inherit-ctor2.C: Likewise. * g++.dg/concepts/var-concept1.C: Likewise. * g++.dg/concepts/fn3.C: Likewise. * g++.dg/torture/pr46364.C: Likewise. * g++.dg/torture/stackalign/eh-alloca-1.C: Likewise. * g++.dg/torture/stackalign/eh-fastcall-1.C: Likewise. * g++.dg/torture/stackalign/eh-vararg-1.C: Likewise. * g++.dg/torture/stackalign/eh-vararg-2.C: Likewise. * g++.dg/torture/stackalign/eh-global-1.C: Likewise. * g++.dg/torture/stackalign/eh-thiscall-1.C: Likewise. * g++.dg/torture/stackalign/eh-inline-2.C: Likewise. * g++.dg/torture/stackalign/eh-inline-1.C: Likewise. * g++.dg/torture/pr52918-1.C: Likewise. * g++.dg/torture/pr49394.C: Likewise. * g++.dg/torture/pr57190.C: Likewise. * g++.dg/cpp0x/static_assert8.C: Likewise. * g++.dg/cpp0x/noexcept19.C: Likewise. * g++.dg/cpp0x/variadic-throw.C: Likewise. * g++.dg/cpp0x/variadic73.C: Likewise. * g++.dg/cpp0x/noexcept02.C: Likewise. * g++.dg/cpp0x/defaulted23.C: Likewise. * g++.dg/cpp0x/noexcept08.C: Likewise. * g++.dg/cpp0x/auto9.C: Likewise. * g++.dg/cpp0x/lambda/lambda-eh2.C: Likewise. * g++.dg/cpp0x/error5.C: Likewise. * c-c++-common/gomp/atomic-12.c: Likewise. * c-c++-common/gomp/atomic-13.c: Likewise. * c-c++-common/gomp/atomic-14.c: Likewise. * c-c++-common/Wvarargs-2.c: Likewise. * c-c++-common/Wvarargs.c: Likewise. * c-c++-common/vector-subscript-2.c: Likewise. * g++.old-deja/g++.robertl/eb123.C: Likewise. * g++.old-deja/g++.eh/tmpl3.C: Likewise. * g++.old-deja/g++.eh/cleanup2.C: Likewise. * g++.old-deja/g++.eh/badalloc1.C: Likewise. * g++.old-deja/g++.eh/throw2.C: Likewise. * g++.old-deja/g++.eh/throw1.C: Likewise. * g++.old-deja/g++.eh/tmpl1.C: Likewise. * g++.old-deja/g++.other/new7.C: Likewise. * g++.old-deja/g++.other/crash30.C: Likewise. * g++.old-deja/g++.other/regstack.C: Likewise. * g++.old-deja/g++.other/crash28.C: Likewise. * g++.old-deja/g++.jason/bool5.C: Likewise. * g++.old-deja/g++.mike/p10416.C: Likewise. * g++.old-deja/g++.mike/eh25.C: Likewise. * g++.old-deja/g++.mike/eh55.C: Likewise. libcpp/ * include/cpplib.h (enum c_lang): Rename CLK_GNUCXX1Z to CLK_GNUCXX17 and CLK_CXX1Z to CLK_CXX17. * init.c (lang_defaults, cpp_init_builtins): Likewise. * expr.c (cpp_classify_number): Use C++17 instead of C++1z in diagnostics. libstdc++-v3/ * testsuite/libstdc++-prettyprinters/cxx17.cc: Use -std=c++17 or -std=gnu++17 instead of -std=c++1z or -std=gnu++1z. Use c++17 instead of c++1z and c++17_only instead of c++1z_only. Adjust expected diagnostics and comments refering to 1z to 17. * testsuite/30_threads/lock_guard/cons/deduction.cc: Likewise. * testsuite/30_threads/scoped_lock/cons/deduction.cc: Likewise. * testsuite/30_threads/scoped_lock/cons/1.cc: Likewise. * testsuite/30_threads/scoped_lock/requirements/typedefs.cc: Likewise. * testsuite/30_threads/scoped_lock/requirements/explicit_instantiation.cc: Likewise. * testsuite/30_threads/unique_lock/cons/deduction.cc: Likewise. * testsuite/18_support/launder/1.cc (test02): Likewise. * testsuite/18_support/launder/requirements_neg.cc: Likewise. * testsuite/18_support/launder/requirements.cc: Likewise. * testsuite/18_support/byte/requirements.cc: Likewise. * testsuite/18_support/byte/ops.cc: Likewise. * testsuite/18_support/byte/global_neg.cc: Likewise. * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc: Likewise. * testsuite/27_io/types/4.cc: Likewise. * testsuite/25_algorithms/sample/81221.cc: Likewise. * testsuite/25_algorithms/sample/1.cc: Likewise. * testsuite/25_algorithms/sample/2.cc: Likewise. * testsuite/25_algorithms/search/searcher.cc: Likewise. * testsuite/28_regex/basic_regex/ctors/deduction.cc: Likewise. * testsuite/experimental/filesystem/path/construct/string_view.cc: Likewise. * testsuite/24_iterators/range_access_cpp17.cc: Likewise. * testsuite/24_iterators/container_access.cc: Likewise. * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise. * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise. * testsuite/20_util/shared_ptr/casts/reinterpret.cc: Likewise. * testsuite/20_util/shared_ptr/cons/deduction.cc: Likewise. * testsuite/20_util/shared_ptr/cons/array.cc: Likewise. * testsuite/20_util/shared_ptr/observers/array.cc (struct A): Likewise. * testsuite/20_util/pair/cons/deduction.cc: Likewise. * testsuite/20_util/variant/deduction.cc: Likewise. * testsuite/20_util/tuple/78939.cc: Likewise. * testsuite/20_util/tuple/cons/deduction.cc: Likewise. * testsuite/20_util/void_t/1.cc: Likewise. * testsuite/20_util/duration/arithmetic/constexpr_c++17.cc: Likewise. * testsuite/20_util/unique_ptr/cons/deduction_neg.cc: Likewise. * testsuite/20_util/addressof/requirements/constexpr.cc: Likewise. * testsuite/20_util/weak_ptr/cons/deduction.cc: Likewise. * testsuite/20_util/has_unique_object_representations/requirements/typedefs.cc: Likewise. * testsuite/20_util/has_unique_object_representations/requirements/explicit_instantiation.cc: Likewise. * testsuite/20_util/has_unique_object_representations/value.cc: Likewise. * testsuite/20_util/time_point/arithmetic/constexpr.cc: Likewise. * testsuite/20_util/function_objects/invoke/59768.cc: Likewise. * testsuite/20_util/function_objects/mem_fn/80478.cc: Likewise. * testsuite/20_util/function/cons/deduction.cc: Likewise. * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc: Likewise. * testsuite/20_util/is_aggregate/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_aggregate/requirements/explicit_instantiation.cc: Likewise. * testsuite/20_util/is_aggregate/value.cc: Likewise. * testsuite/26_numerics/lcm/1.cc: Likewise. * testsuite/26_numerics/lcm/lcm_neg.cc: Likewise. * testsuite/26_numerics/gcd/1.cc: Likewise. * testsuite/26_numerics/gcd/gcd_neg.cc: Likewise. * testsuite/26_numerics/valarray/deduction.cc: Likewise. * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Likewise. * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise. * testsuite/23_containers/queue/members/emplace_cxx17_return.cc: Likewise. * testsuite/23_containers/array/cons/deduction.cc: Likewise. * testsuite/23_containers/array/cons/deduction_neg.cc: Likewise. * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc: Likewise. * testsuite/23_containers/deque/cons/deduction.cc: Likewise. * testsuite/23_containers/stack/members/emplace_cxx17_return.cc: Likewise. * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: Likewise. * testsuite/23_containers/list/cons/deduction.cc: Likewise. * testsuite/23_containers/forward_list/modifiers/emplace_cxx17_return.cc: Likewise. * testsuite/23_containers/forward_list/cons/deduction.cc: Likewise. * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Likewise. * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc: Likewise. * testsuite/23_containers/vector/cons/deduction.cc: Likewise. * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: Likewise. * testsuite/21_strings/basic_string/cons/char/9.cc: Likewise. * testsuite/21_strings/basic_string/cons/char/deduction.cc: Likewise. * testsuite/21_strings/basic_string/cons/char/79162.cc: Likewise. * testsuite/21_strings/basic_string/cons/wchar_t/9.cc: Likewise. * testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc: Likewise. * testsuite/21_strings/basic_string/cons/wchar_t/79162.cc: Likewise. * testsuite/21_strings/basic_string_view/modifiers/swap/char/1.cc: Likewise. * testsuite/21_strings/basic_string_view/modifiers/swap/wchar_t/1.cc: Likewise. * testsuite/21_strings/basic_string_view/operations/compare/char/2.cc: Likewise. * testsuite/21_strings/basic_string_view/operations/compare/char/70483.cc: Likewise. * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/2.cc: Likewise. * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc: Likewise. From-SVN: r252826 |
||
Jonathan Wakely
|
04d07b61cb |
PR libstdc++/81751 don't call fflush(NULL)
PR libstdc++/79820 PR libstdc++/81751 * config/io/basic_file_stdio.cc (sys_open(FILE*, ios_base::openmode)): Call fflush on the stream instead of calling sync() while _M_cfile is null. Restore original value of errno. * testsuite/ext/stdio_filebuf/char/79820.cc: New. * testsuite/ext/stdio_filebuf/char/81751.cc: New. From-SVN: r250993 |
||
Rainer Orth
|
d12366802a |
Use pthread effective-target in testsuite
* testsuite: Add dg-require-effective-target pthread to -pthread tests. Remove explicit target lists from dg-do and dg-options. * testsuite/30_threads/async/forced_unwind.cc: Remove explit target list from dg-options. * testsuite/30_threads/packaged_task/forced_unwind.cc: Likewise. * 30_threads/shared_mutex/cons/1.cc: Likewise. Pass -pthread for all targets. * 30_threads/shared_mutex/try_lock/1.cc: Likewise. * 30_threads/shared_mutex/try_lock/2.cc: Likewise. * 30_threads/shared_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/this_thread/57060.cc: Require c++11 via dg-require-effective-target. From-SVN: r249217 |
||
Jonathan Wakely
|
01e3c2296a |
Fix Debug Mode test failures
* testsuite/23_containers/array/tuple_interface/ tuple_element_debug_neg.cc: Adjust dg-error. * testsuite/23_containers/list/operations/78389.cc: Fix less-than to define a valid strict weak ordering. * testsuite/23_containers/priority_queue/67085.cc: Disable test for Debug Mode, due to debug checks making extra copies of predicate. * testsuite/ext/pb_ds/regression/priority_queue_binary_heap-62045.cc: Likewise. From-SVN: r246426 |
||
Jonathan Wakely
|
75d359f759 |
PR libstdc++/62045 fix O(N) insertion in pd_ds binary heap
2017-03-15 Xi Ruoyao <ryxi@stu.xidian.edu.cn> PR libstdc++/62045 * include/ext/pb_ds/qdetail/binary_heap_/binary_heap_.hpp (is_heap): Remove. (push_heap): Remove the wrong checking using is_heap. (make_heap): Remove the assertion using is_heap. * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp (modify): Ditto. (resize_for_insert_if_needed): Add PB_DS_ASSERT_VALID after calling make_heap. 2017-03-15 Jonathan Wakely <jwakely@redhat.com> PR libstdc++/62045 * testsuite/ext/pb_ds/regression/priority_queue_binary_heap-62045.cc: New test. * testsuite/ext/pb_ds/regression/priority_queues.cc: Fix copy&paste error in comment. From-SVN: r246173 |
||
Jonathan Wakely
|
12905f106c |
PR69240 Define inequality operators for <random> param types
PR libstdc++/69240 * include/bits/random.h (uniform_real_distribution::param_type) (normal_distribution::param_type, lognormal_distribution::param_type) (gamma_distribution::param_type, chi_squared_distribution::param_type) (cauchy_distribution::param_type, fisher_f_distribution::param_type) (student_t_distribution::param_type) (bernoulli_distribution::param_type, binomial_distribution::param_type) (geometric_distribution::param_type) (negative_binomial_distribution::param_type) (poisson_distribution::param_type) (exponential_distribution::param_type) (weibull_distribution::param_type) (extreme_value_distribution::param_type) (discrete_distribution::param_type) (piecewise_constant_distribution::param_type) (piecewise_linear_distribution::param_type): Define operator!=. * include/bits/uniform_int_dist.h (uniform_int_distribution::param_type): Likewise. * include/ext/random (beta_distribution::param_type) (rice_distribution::param_type, nakagami_distribution::param_type) (pareto_distribution::param_type, k_distribution::param_type) (arcsine_distribution::param_type, hoyt_distribution::param_type) (triangular_distribution::param_type) (von_mises_distribution::param_type) (hypergeometric_distribution::param_type) (logistic_distribution::param_type) (uniform_on_sphere_distribution::param_type) (uniform_inside_sphere_distribution::param_type): Likewise. * testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc: Test construction with param_type. * testsuite/26_numerics/random/binomial_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/hypergeometric_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/k_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/uniform_inside_sphere_distribution/cons/ parms.cc: Likewise. * testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise. From-SVN: r244722 |
||
Jonathan Wakely
|
115ac9ff61 |
PR79156 fix std::__enable_shared_from_this extension
PR libstdc++/79156 * include/bits/shared_ptr_base.h (__enable_shared_from_this_base): Fix return type. (__enable_shared_from_this): Declare __shared_ptr as a friend. * testsuite/ext/shared_ptr/1.cc: New test. From-SVN: r244668 |
||
Jonathan Wakely
|
8c05647c56 |
PR78905 define _GLIBCXX_RELEASE macro
PR libstdc++/78905 * doc/xml/manual/abi.xml (abi.versioning.history): Add markup to macro names, filenames, and literal values. Document _GLIBCXX_RELEASE. Document that the deprecated _GLIBCXX_VERSION macro was removed for the 4.0.0 release. * doc/html/*: Regenerate. * include/Makefile.am (_GLIBCXX_RELEASE): Set value. * include/Makefile.in: Regenerate. * include/bits/c++config (_GLIBCXX_RELEASE): Add #define. * testsuite/ext/profile/mutex_extensions_neg.cc: Use lineno of 0 in dg-error. From-SVN: r244642 |
||
Jakub Jelinek
|
cbe34bb5ed |
Update copyright years.
From-SVN: r243994 |
||
Jonathan Wakely
|
1f153a1d2a |
Replace dynamic exception specifications in testsuite
* testsuite/util/testsuite_hooks.h (THROW): Define. * testsuite/util/replacement_memory_operators.h: Include testsuite_hooks.h and use THROW macro. * testsuite/util/testsuite_tr1.h: Likewise. * testsuite/20_util/allocator/1.cc: Use THROW macro. * testsuite/22_locale/locale/cons/12352.cc: Likewise. * testsuite/23_containers/vector/zero_sized_allocations.cc: Likewise. * testsuite/30_threads/lock_guard/cons/1.cc: Replace dynamic exception specification with noexcept-specifier. * testsuite/ext/pool_allocator/allocate_chunk.cc: Include testsuite_hooks.h and use THROW macro. * testsuite/ext/profile/replace_new.cc: Likewise. From-SVN: r243353 |
||
David Edelsohn
|
6d0e8a552f |
50594.cc: XFAIL on AIX.
* testsuite/18_support/50594.cc: XFAIL on AIX. * testsuite/ext/mt_allocator/check_new.cc: Same. * testsuite/ext/pool_allocator/check_new.cc: Same. * testsuite/27_io/ios_base/storage/11584.cc: Same. From-SVN: r243023 |
||
Jason Merrill
|
ba1e69c03f |
DR 374 - specialization in outer namespace
PR c++/56840 * pt.c (check_specialization_namespace): Allow any enclosing namespace. (check_unqualified_spec_or_inst): New. (check_explicit_specialization): Call it. * parser.c (cp_parser_elaborated_type_specifier) (cp_parser_class_head): Call it. From-SVN: r242348 |
||
Jason Merrill
|
51dc660315 |
Implement P0012R1, Make exception specifications part of the type system.
gcc/cp/ * cp-tree.h (enum tsubst_flags): Add tf_fndecl_type. (flag_noexcept_type, ce_type): New. * call.c (build_conv): Add ck_fnptr. (enum conversion_kind): Change ck_tsafe to ck_fnptr. (convert_like_real): Likewise. (standard_conversion): Likewise. Allow function pointer conversions for pointers to member functions. (reference_compatible_p): Allow function pointer conversions. (direct_reference_binding): Likewise. (reference_binding): Reference-compatible is no longer a subset of reference-related. (is_subseq): Also strip ck_lvalue after next_conversion. * class.c (instantiate_type): Check fnptr_conv_p. (resolve_address_of_overloaded_function): Likewise. * cvt.c (can_convert_tx_safety): Now static. (noexcept_conv_p, fnptr_conv_p, strip_fnptr_conv): New. * decl.c (flag_noexcept_type): Define. (cxx_init_decl_processing): Set it. (bad_specifiers): Check it. (grokdeclarator) [cdk_function]: Add exception-spec to type here. * lambda.c (maybe_add_lambda_conv_op): Add exception-spec to returned pointer. * mangle.c (struct globals): Add need_cxx1z_warning. (mangle_decl): Check it. (write_exception_spec): New. (write_function_type): Call it. (canonicalize_for_substitution): Handle exception spec. (write_type): Likewise. (write_encoding): Set processing_template_decl across mangling of partially-instantiated type. * pt.c (determine_specialization): Pass tf_fndecl_type. (tsubst_decl, fn_type_unification): Likewise. (tsubst): Strip tf_fndecl_type, pass it to tsubst_exception_specification. (convert_nontype_argument_function): Handle function pointer conversion. (convert_nontype_argument): Likewise. (unify, for_each_template_parm_r): Walk into noexcept-specifier. * rtti.c (ptr_initializer): Encode noexcept. * tree.c (canonical_eh_spec): New. (build_exception_variant): Use it. * typeck.c (composite_pointer_type): Handle fnptr conversion. (comp_except_specs): Compare canonical EH specs. (structural_comptypes): Call it. gcc/c-family/ * c.opt (Wc++1z-compat): New. * c-cppbuiltin.c (c_cpp_builtins): Add __cpp_noexcept_function_type. libstdc++-v3/ * include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM) (_GLIBCXX_NOEXCEPT_QUAL): New. * include/std/type_traits (is_function): Use them. * libsubc++/new (launder): Likewise. * libsupc++/cxxabi.h (__pbase_type_info::__masks): Add __noexcept_mask. * libsupc++/pbase_type_info.cc (__do_catch): Handle function pointer conversion. libiberty/ * cp-demangle.c (is_fnqual_component_type): New. (d_encoding, d_print_comp_inner, d_print_mod_list): Use it. (FNQUAL_COMPONENT_CASE): New. (d_make_comp, has_return_type, d_print_comp_inner) (d_print_function_type): Use it. (next_is_type_qual): New. (d_cv_qualifiers, d_print_mod): Handle noexcept and throw-spec. include/ * demangle.h (enum demangle_component_type): Add DEMANGLE_COMPONENT_NOEXCEPT, DEMANGLE_COMPONENT_THROW_SPEC. From-SVN: r241944 |
||
Jonathan Wakely
|
e63d7e71a1 |
Fix target selectors in uniform_inside_sphere_distribution tests
* testsuite/ext/random/uniform_inside_sphere_distribution/cons/ default.cc: Fix effective target selector. * testsuite/ext/random/uniform_inside_sphere_distribution/cons/ parms.cc: Likewise. * testsuite/ext/random/uniform_inside_sphere_distribution/operators/ equal.cc: Likewise. * testsuite/ext/random/uniform_inside_sphere_distribution/operators/ generate.cc: Likewise. * testsuite/ext/random/uniform_inside_sphere_distribution/operators/ inequal.cc: Likewise. * testsuite/ext/random/uniform_inside_sphere_distribution/operators/ serialize.cc: Likewise. From-SVN: r241621 |
||
Edward Smith-Rowland
|
10da5b7cbc |
Implement uniform_inside_sphere_distribution extension.
2016-10-26 Edward Smith-Rowland <3dw4rd@verizon.net> Implement uniform_inside_sphere_distribution extension. * include/ext/random: Implement uniform_inside_sphere_distribution. * include/ext/random.tcc: Ditto. * testsuite/ext/random/uniform_inside_sphere_distribution/ cons/default.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ cons/parms.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ operators/equal.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ operators/generate.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ operators/inequal.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ operators/serialize.cc: New. From-SVN: r241562 |
||
Ville Voutilainen
|
b08c2bc7bd |
Make sure the return value of malloc_allocator::allocate is zero-initialized so...
Make sure the return value of malloc_allocator::allocate is zero-initialized so that checking it for non-zero works later. * include/ext/malloc_allocator.h (malloc_allocator::allocate): Initialize the return value. * testsuite/ext/malloc_allocator/sanity.cc: New. From-SVN: r241212 |
||
Paolo Carlini
|
1558d39e1c |
1.cc: Remove 'test' variables.
2016-10-14 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables. * testsuite/26_numerics/adjacent_difference/1.cc: Likewise. * testsuite/26_numerics/complex/13450.cc: Likewise. * testsuite/26_numerics/complex/50880.cc: Likewise. * testsuite/26_numerics/complex/c99.cc: Likewise. * testsuite/26_numerics/complex/cons/48760.cc: Likewise. * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise. * testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise. * testsuite/26_numerics/complex/dr844.cc: Likewise. * testsuite/26_numerics/complex/inserters_extractors/char/1.cc: Likewise. * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc: Likewise. * testsuite/26_numerics/complex/value_operations/1.cc: Likewise. * testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise. * testsuite/26_numerics/headers/cmath/19322.cc: Likewise. * testsuite/26_numerics/headers/cmath/ c99_classification_macros_c++11.c: Likewise.c * testsuite/26_numerics/headers/cmath/ c99_classification_macros_c++98.cc: Likewise. * testsuite/26_numerics/headers/cmath/c_math.cc: Likewise. * testsuite/26_numerics/headers/cmath/dr550.cc: Likewise. * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise. * testsuite/26_numerics/headers/cmath/powi.cc: Likewise. * testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise. * testsuite/26_numerics/inner_product/1.cc: Likewise. * testsuite/26_numerics/iota/1.cc: Likewise. * testsuite/26_numerics/partial_sum/1.cc: Likewise. * testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/bernoulli_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/bernoulli_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/binomial_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/binomial_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/binomial_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/binomial_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc: Likewise. * testsuite/26_numerics/random/cauchy_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/default_random_engine.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/operators/equal.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/operators/ serialize.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/cons/ initlist.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/cons/ num_xbound_fun.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/cons/range.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/operators/equal.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/independent_bits_engine/operators/ serialize.cc: Likewise. * testsuite/26_numerics/random/knuth_b.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/cons/ 55215.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/cons/ default.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/operators/ 51795.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/operators/ serialize.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/cons/ default.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/operators/ serialize.cc: Likewise. * testsuite/26_numerics/random/minstd_rand.cc: Likewise. * testsuite/26_numerics/random/minstd_rand0.cc: Likewise. * testsuite/26_numerics/random/mt19937.cc: Likewise. * testsuite/26_numerics/random/mt19937_64.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/ operators/equal.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/ operators/inequal.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/cons/ initlist_fun.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/cons/ num_xbound_fun.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/cons/ range.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/ operators/equal.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/ operators/inequal.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/cons/ initlist_fun.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/cons/ num_xbound_fun.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/cons/ range.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/ operators/equal.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/ operators/inequal.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/random_device/cons/default.cc: Likewise. * testsuite/26_numerics/random/random_device/cons/token.cc: Likewise. * testsuite/26_numerics/random/ranlux24.cc: Likewise. * testsuite/26_numerics/random/ranlux24_base.cc: Likewise. * testsuite/26_numerics/random/ranlux48.cc: Likewise. * testsuite/26_numerics/random/ranlux48_base.cc: Likewise. * testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/operators/ serialize.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ 55215.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/cons/ default.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/subtract_with_carry_engine/operators/ serialize.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/cons/ parms.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/operators/ equal.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/operators/ inequal.cc: Likewise. * testsuite/26_numerics/slice/1.cc: Likewise. * testsuite/26_numerics/slice_array/array_assignment.cc: Likewise. * testsuite/26_numerics/valarray/27867.cc: Likewise. * testsuite/26_numerics/valarray/28277.cc: Likewise. * testsuite/26_numerics/valarray/30416.cc: Likewise. * testsuite/26_numerics/valarray/dr543.cc: Likewise. * testsuite/26_numerics/valarray/dr630-1.cc: Likewise. * testsuite/26_numerics/valarray/dr630-2.cc: Likewise. * testsuite/26_numerics/valarray/dr630-3.C: Likewise. * testsuite/26_numerics/valarray/init-list.cc: Likewise. * testsuite/26_numerics/valarray/moveable.cc: Likewise. * testsuite/26_numerics/valarray/operators.cc: Likewise. * testsuite/26_numerics/valarray/swap.cc: Likewise. * testsuite/experimental/deque/erasure.cc: Likewise. * testsuite/experimental/filesystem/iterators/directory_iterator.cc: Likewise. * testsuite/experimental/filesystem/iterators/ recursive_directory_iterator.cc: Likewise. * testsuite/experimental/filesystem/operations/absolute.cc: Likewise. * testsuite/experimental/filesystem/operations/canonical.cc: Likewise. * testsuite/experimental/filesystem/operations/copy.cc: Likewise. * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise. * testsuite/experimental/filesystem/operations/create_directories.cc: Likewise. * testsuite/experimental/filesystem/operations/create_directory.cc: Likewise. * testsuite/experimental/filesystem/operations/current_path.cc: Likewise. * testsuite/experimental/filesystem/operations/exists.cc: Likewise. * testsuite/experimental/filesystem/operations/file_size.cc: Likewise. * testsuite/experimental/filesystem/operations/last_write_time.cc: Likewise. * testsuite/experimental/filesystem/operations/permissions.cc: Likewise. * testsuite/experimental/filesystem/operations/status.cc: Likewise. * testsuite/experimental/filesystem/operations/temp_directory_path.cc: Likewise. * testsuite/experimental/filesystem/path/native/string.cc: Likewise. * testsuite/experimental/forward_list/erasure.cc: Likewise. * testsuite/experimental/list/erasure.cc: Likewise. * testsuite/experimental/map/erasure.cc: Likewise. * testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise. * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc: Likewise. * testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise. * testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise. * testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise. * testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc: Likewise. * testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise. * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc: Likewise. * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc: Likewise. * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc: Likewise. * testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise. * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise. * testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise. * testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc: Likewise. * testsuite/experimental/memory/shared_ptr/observers/operators.cc: Likewise. * testsuite/experimental/memory/shared_ptr/observers/owner_before.cc: Likewise. * testsuite/experimental/memory/shared_ptr/observers/use_count.cc: Likewise. * testsuite/experimental/memory_resource/1.cc: Likewise. * testsuite/experimental/memory_resource/null_memory_resource.cc: Likewise. * testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise. * testsuite/experimental/set/erasure.cc: Likewise. * testsuite/experimental/string/erasure.cc: Likewise. * testsuite/experimental/string_view/capacity/1.cc: Likewise. * testsuite/experimental/string_view/cons/char/1.cc: Likewise. * testsuite/experimental/string_view/cons/char/2.cc: Likewise. * testsuite/experimental/string_view/cons/char/3.cc: Likewise. * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise. * testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise. * testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise. * testsuite/experimental/string_view/element_access/char/1.cc: Likewise. * testsuite/experimental/string_view/element_access/char/empty.cc: Likewise. * testsuite/experimental/string_view/element_access/char/ front_back.cc: Likewise. * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Likewise. * testsuite/experimental/string_view/element_access/wchar_t/empty.cc: Likewise. * testsuite/experimental/string_view/element_access/wchar_t/ front_back.cc: Likewise. * testsuite/experimental/string_view/inserters/char/1.cc: Likewise. * testsuite/experimental/string_view/inserters/char/2.cc: Likewise. * testsuite/experimental/string_view/inserters/char/3.cc: Likewise. * testsuite/experimental/string_view/inserters/pod/10081-out.cc: Likewise. * testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise. * testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise. * testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise. * testsuite/experimental/string_view/modifiers/remove_prefix/char/ 1.cc: Likewise. * testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/ 1.cc: Likewise. * testsuite/experimental/string_view/modifiers/remove_suffix/char/ 1.cc: Likewise. * testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/ 1.cc: Likewise. * testsuite/experimental/string_view/operations/compare/char/1.cc: Likewise. * testsuite/experimental/string_view/operations/compare/char/ 13650.cc: Likewise. * testsuite/experimental/string_view/operations/compare/wchar_t/ 1.cc: Likewise. * testsuite/experimental/string_view/operations/compare/wchar_t/ 13650.cc: Likewise. * testsuite/experimental/string_view/operations/copy/char/1.cc: Likewise. * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: Likewise. * testsuite/experimental/string_view/operations/data/char/1.cc: Likewise. * testsuite/experimental/string_view/operations/data/wchar_t/1.cc: Likewise. * testsuite/experimental/string_view/operations/find/char/1.cc: Likewise. * testsuite/experimental/string_view/operations/find/char/2.cc: Likewise. * testsuite/experimental/string_view/operations/find/char/3.cc: Likewise. * testsuite/experimental/string_view/operations/find/char/4.cc: Likewise. * testsuite/experimental/string_view/operations/find/wchar_t/1.cc: Likewise. * testsuite/experimental/string_view/operations/find/wchar_t/2.cc: Likewise. * testsuite/experimental/string_view/operations/find/wchar_t/3.cc: Likewise. * testsuite/experimental/string_view/operations/find/wchar_t/4.cc: Likewise. * testsuite/experimental/string_view/operations/rfind/char/1.cc: Likewise. * testsuite/experimental/string_view/operations/rfind/char/2.cc: Likewise. * testsuite/experimental/string_view/operations/rfind/char/3.cc: Likewise. * testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc: Likewise. * testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc: Likewise. * testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc: Likewise. * testsuite/experimental/string_view/operations/substr/char/1.cc: Likewise. * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc: Likewise. * testsuite/experimental/string_view/operations/to_string/1.cc: Likewise. * testsuite/experimental/string_view/operators/char/2.cc: Likewise. * testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise. * testsuite/experimental/unordered_map/erasure.cc: Likewise. * testsuite/experimental/unordered_set/erasure.cc: Likewise. * testsuite/experimental/vector/erasure.cc: Likewise. * testsuite/ext/array_allocator/1.cc: Likewise. * testsuite/ext/array_allocator/2.cc: Likewise. * testsuite/ext/array_allocator/3.cc: Likewise. * testsuite/ext/array_allocator/variadic_construct.cc: Likewise. * testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise. * testsuite/ext/codecvt/1.cc: Likewise. * testsuite/ext/codecvt/char-1.cc: Likewise. * testsuite/ext/codecvt/char-2.cc: Likewise. * testsuite/ext/codecvt/wchar_t.cc: Likewise. * testsuite/ext/enc_filebuf/char/13189.cc: Likewise. * testsuite/ext/enc_filebuf/char/13598.cc: Likewise. * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise. * testsuite/ext/ext_pointer/1.cc: Likewise. * testsuite/ext/ext_pointer/1_neg.cc: Likewise. * testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise. * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise. * testsuite/ext/mt_allocator/tune-1.cc: Likewise. * testsuite/ext/mt_allocator/tune-2.cc: Likewise. * testsuite/ext/mt_allocator/tune-3.cc: Likewise. * testsuite/ext/mt_allocator/tune-4.cc: Likewise. * testsuite/ext/mt_allocator/variadic_construct.cc: Likewise. * testsuite/ext/new_allocator/variadic_construct.cc: Likewise. * testsuite/ext/pod_char_traits.cc: Likewise. * testsuite/ext/pool_allocator/variadic_construct.cc: Likewise. * testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise. * testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/arcsine_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/arcsine_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/arcsine_distribution/operators/serialize.cc: Likewise. * testsuite/ext/random/beta_distribution/cons/default.cc: Likewise. * testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise. * testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/hoyt_distribution/operators/serialize.cc: Likewise. * testsuite/ext/random/hypergeometric_distribution/cons/default.cc: Likewise. * testsuite/ext/random/hypergeometric_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/hypergeometric_distribution/operators/ equal.cc: Likewise. * testsuite/ext/random/hypergeometric_distribution/operators/ inequal.cc: Likewise. * testsuite/ext/random/hypergeometric_distribution/operators/ serialize.cc: Likewise. * testsuite/ext/random/k_distribution/cons/default.cc: Likewise. * testsuite/ext/random/k_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/k_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise. * testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise. * testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/logistic_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/logistic_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/logistic_distribution/operators/serialize.cc: Likewise. * testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise. * testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/nakagami_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/nakagami_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/nakagami_distribution/operators/serialize.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise. * testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/pareto_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/pareto_distribution/operators/serialize.cc: Likewise. * testsuite/ext/random/rice_distribution/cons/default.cc: Likewise. * testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/rice_distribution/operators/serialize.cc: Likewise. * testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/ default.cc: Likewise. * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/ equal.cc: Likewise. * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/ inequal.cc: Likewise. * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/ serialize.cc: Likewise. * testsuite/ext/random/triangular_distribution/cons/default.cc: Likewise. * testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/triangular_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/triangular_distribution/operators/inequal.cc: Likewise. * testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc: Likewise. * testsuite/ext/random/uniform_on_sphere_distribution/operators/ equal.cc: Likewise. * testsuite/ext/random/uniform_on_sphere_distribution/operators/ generate.cc: Likewise. * testsuite/ext/random/uniform_on_sphere_distribution/operators/ inequal.cc: Likewise. * testsuite/ext/random/uniform_on_sphere_distribution/operators/ serialize.cc: Likewise. * testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise. * testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/von_mises_distribution/operators/equal.cc: Likewise. * testsuite/ext/random/von_mises_distribution/operators/inequal.cc: Likewise. * testsuite/ext/rope/2.cc: Likewise. * testsuite/ext/rope/3.cc: Likewise. * testsuite/ext/rope/4.cc: Likewise. * testsuite/ext/rope/pthread7-rope.cc: Likewise. * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise. * testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise. * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise. * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise. * testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise. * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise. * testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise. * testsuite/ext/stdio_filebuf/char/2.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise. * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise. * testsuite/ext/throw_allocator/variadic_construct.cc: Likewise. * testsuite/ext/type_traits/add_unsigned.cc: Likewise. * testsuite/ext/type_traits/remove_unsigned.cc: Likewise. * testsuite/ext/vstring/capacity/29134.cc: Likewise. * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise. * testsuite/ext/vstring/cons/58415-1.cc: Likewise. * testsuite/ext/vstring/cons/moveable.cc: Likewise. * testsuite/ext/vstring/element_access/char/58163.cc: Likewise. * testsuite/ext/vstring/element_access/char/front_back.cc: Likewise. * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise. * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise. * testsuite/ext/vstring/hash/char/1.cc: Likewise. * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise. * testsuite/ext/vstring/init-list.cc: Likewise. * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise. * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise. * testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise. * testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise. * testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise. * testsuite/ext/vstring/operators/1.cc: Likewise. * testsuite/ext/vstring/operators/2.cc: Likewise. From-SVN: r241164 |
||
Jonathan Wakely
|
ace4c2f060 |
PR65122 extended alignment support in allocators
PR libstdc++/65122 * include/ext/malloc_allocator.h (malloc_allocator::allocate): Use aligned_alloc for types with extended alignment if available, otherwise throw bad_alloc if malloc doesn't return a suitable value. * include/ext/bitmap_allocator.h (bitmap_allocator::allocate) (bitmap_allocator::deallocate): Use aligned new/delete for types with extended alignment. * include/ext/mt_allocator.h (__mt_alloc::allocate) (__mt_alloc::deallocate): Likewise. * include/ext/new_allocator.h (new_allocator::allocate) (new_allocator::deallocate): Likewise. * include/ext/pool_allocator.h (__pool_alloc::allocate) (__pool_alloc::deallocate): Likewise. * testsuite/20_util/allocator/overaligned.cc: New test. * testsuite/ext/bitmap_allocator/overaligned.cc: New test. * testsuite/ext/malloc_allocator/overaligned.cc: New test. * testsuite/ext/mt_allocator/overaligned.cc: New test. * testsuite/ext/new_allocator/overaligned.cc: New test. * testsuite/ext/pool_allocator/overaligned.cc: New test. From-SVN: r241158 |
||
Jonathan Wakely
|
e347987da8 |
Fix libstdc++ versioned namespace build
PR libstdc++/68323 PR libstdc++/77794 * config/abi/pre/gnu-versioned-namespace.ver: Add exports for __cxa_thread_atexit and __gnu_cxx::__freeres. * include/Makefile.am: Add <experimental/bits/lfts_config.h> * include/Makefile.in: Regenerate. * include.bits/basic_string.h: Fix nesting of versioned namespaces. * include/bits/c++config: Declare versioned namespaces for literals. * include/bits/regex.h (basic_regex, match_results): Add workarounds for PR c++/59256. * include/bits/uniform_int_dist.h: Fix nesting of versioned namespace. * include/std/chrono: Likewise. * include/std/complex: Likewise. * include/std/string_view: Likewise. * include/std/variant: Likewise. Add workaround for PR c++/59256. * include/experimental/bits/fs_fwd.h: Declare versioned namespace. * include/experimental/bits/lfts_config.h: Declare versioned namespaces. * include/experimental/algorithm: Include <experimental/bits/lfts_config.h>. * include/experimental/any: Likewise. * include/experimental/bits/erase_if.h: Likewise. * include/experimental/chrono: Likewise. * include/experimental/functional: Likewise. * include/experimental/memory_resource: Likewise. * include/experimental/optional: Likewise. * include/experimental/propagate_const: Likewise. * include/experimental/random: Likewise. * include/experimental/ratio: Likewise. * include/experimental/system_error: Likewise. * include/experimental/tuple: Likewise. * include/experimental/type_traits: Likewise. * include/experimental/utility: Likewise. * include/experimental/string_view: Likewise. Fix nesting of versioned namespaces. * include/experimental/bits/string_view.tcc: Reopen inline namespace for non-inline function definitions. * testsuite/17_intro/using_namespace_std_exp_neg.cc: New test. * testsuite/20_util/duration/literals/range.cc: Adjust dg-error line. * testsuite/experimental/any/misc/any_cast_neg.cc: Likewise. * testsuite/experimental/propagate_const/assignment/move_neg.cc: Likewise. * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise. * testsuite/experimental/propagate_const/requirements2.cc: Likewise. * testsuite/experimental/propagate_const/requirements3.cc: Likewise. * testsuite/experimental/propagate_const/requirements4.cc: Likewise. * testsuite/experimental/propagate_const/requirements5.cc: Likewise. * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise. From-SVN: r240714 |
||
Jonathan Wakely
|
1319041924 |
Avoid reallocation for basic_string::clear()
PR libstdc++/56166 PR libstdc++/77582 * include/bits/basic_string.h (basic_string::clear()): Drop reference and use empty rep. * include/ext/rc_string_base.h (__rc_string_base::_M_clear()): Likewise. * testsuite/21_strings/basic_string/56166.cc: New. * testsuite/ext/vstring/modifiers/clear/56166.cc: New. From-SVN: r240447 |
||
Christophe Lyon
|
13cddbc115 |
Fix dg-require before dg-run directives in testsuite.
libstdc++-v3/ChangeLog: 2016-09-14 Christophe Lyon <christophe.lyon@linaro.org> * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Move dg-do directive before dg-skip. * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Move dg-do directive before dg-require. * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise. * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise. * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise. * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc: Likewise. * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise. * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise. * testsuite/27_io/objects/char/12048-5.cc: Likewise. * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise. * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise. gcc/testsuite/ChangeLog: 2016-09-14 Christophe Lyon <christophe.lyon@linaro.org> * g++.dg/cpp0x/lambda/lambda-mangle.C: Move dg-do directive before dg-require. * g++.dg/ext/builtin_alloca.C: Likewise. * g++.dg/template/spec35.C: Likewise. * gcc.dg/builtins-68.c: Likewise. * gcc.misc-tests/gcov-13.c: Likewise. * gcc.misc-tests/gcov-14.c: Likewise. From-SVN: r240135 |