585 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
Jonathan Wakely
|
5f939178ec |
PR libstdc++/83226 avoid forming pointer-to-reference type
PR libstdc++/83226 * include/bits/node_handle.h (_Node_handle::__pointer): Avoid forming pointer-to-reference types. * testsuite/23_containers/map/modifiers/insert/83226.cc: New test. From-SVN: r255271 |
||
Jonathan Wakely
|
866e4d3853 |
PR libstdc++/48101 improve errors for invalid container specializations
PR libstdc++/48101 * include/bits/allocator.h (allocator<const _Tp>) (allocator<volatile _Tp>, allocator<const volatile _Tp>): Add partial specializations. * include/bits/forward_list.h (forward_list): Add static assertions. * include/bits/hashtable.h (__cache_default): Use __is_nothrow_invocable instead of __is_noexcept_hash. (_Hashtable): Add static assertions. * include/bits/hashtable_policy.h (__is_noexcept_hash): Remove. * include/bits/stl_deque.h (deque): Add static assertions. * include/bits/stl_function.h (_Identity<const _Tp>): Add partial specialization. * include/bits/stl_list.h (list): Add static assertions. * include/bits/stl_map.h (map): Likewise. * include/bits/stl_multimap.h (multimap): Likewise. * include/bits/stl_multiset.h (multiset): Likewise. * include/bits/stl_set.h (set): Likewise. * include/bits/stl_tree.h (_Rb_tree): Likewise. * include/bits/stl_vector.h (vector): Likewise. * include/bits/unordered_map.h (unordered_map, unordered_multimap): Use typename instead of class in template-parameter-list and remove spaces. * include/bits/unordered_set.h (unordered_set, unordered_multiset): Likewise. * testsuite/23_containers/deque/48101-2_neg.cc: New test. * testsuite/23_containers/deque/48101_neg.cc: New test. * testsuite/23_containers/forward_list/48101-2_neg.cc: New test. * testsuite/23_containers/forward_list/48101_neg.cc: New test. * testsuite/23_containers/list/48101-2_neg.cc: New test. * testsuite/23_containers/list/48101_neg.cc: New test. * testsuite/23_containers/map/48101-2_neg.cc: New test. * testsuite/23_containers/map/48101_neg.cc: New test. * testsuite/23_containers/map/operations/31440.cc: Fix comparison object to have const-qualified call operator. * testsuite/23_containers/multimap/48101-2_neg.cc: New test. * testsuite/23_containers/multimap/48101_neg.cc: New test. * testsuite/23_containers/multiset/48101-2_neg.cc: New test. * testsuite/23_containers/multiset/48101_neg.cc: New test. * testsuite/23_containers/set/48101-2_neg.cc: New test. * testsuite/23_containers/set/48101_neg.cc: New test. * testsuite/23_containers/unordered_map/48101-2_neg.cc: New test. * testsuite/23_containers/unordered_map/48101_neg.cc: New test. * testsuite/23_containers/unordered_multimap/48101-2_neg.cc: New test. * testsuite/23_containers/unordered_multimap/48101_neg.cc: New test. * testsuite/23_containers/unordered_multiset/48101-2_neg.cc: New test. * testsuite/23_containers/unordered_multiset/48101_neg.cc: New test. * testsuite/23_containers/unordered_set/48101-2_neg.cc: New test. * testsuite/23_containers/unordered_set/48101_neg.cc: New test. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error line number. * testsuite/23_containers/vector/48101-2_neg.cc: New test. * testsuite/23_containers/vector/48101_neg.cc: New test. From-SVN: r255035 |
||
Paolo Carlini
|
98910bc2b9 |
deduction.cc: Avoid -Wreturn-type warnings.
2017-11-06 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/20_util/optional/cons/deduction.cc: Avoid -Wreturn-type warnings. * testsuite/20_util/pair/cons/deduction.cc: Likewise. * testsuite/20_util/pair/traits.cc: Likewise. * testsuite/20_util/tuple/cons/deduction.cc: Likewise. * testsuite/20_util/variant/compile.cc: Likewise. * testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise. * testsuite/23_containers/unordered_map/modifiers/try_emplace.cc: Likewise. From-SVN: r254450 |
||
Ville Voutilainen
|
ccbbf8df05 |
Implement LWG 2485
* include/debug/array (get(const array<_Tp, _Nm>&&)): New. * include/std/array (get(const array<_Tp, _Nm>&&)): Likewise. * include/std/tuple (get(const tuple<_Elements...>&&)): Likewise. (get(const tuple<_Types...>&&)): Likewise. * include/std/utility (__pair_get::__const_move_get(const std::pair<_Tp1, _Tp2>&&)): Likewise. (get(const std::pair<_Tp1, _Tp2>&&)): Likewise. (get(const pair<_Tp, _Up>&&)): Likewise. (get(const pair<_Up, _Tp>&&)): Likewise. * testsuite/20_util/pair/astuple/get.cc: Add tests for new overloads. * testsuite/20_util/pair/astuple/get_by_type.cc: Likewise. * testsuite/20_util/tuple/element_access/get2.cc: Likewise. * testsuite/20_util/tuple/element_access/get2_by_type.cc: Likewise. * testsuite/23_containers/array/tuple_interface/get.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_element_debug_neg.cc: Adjust. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Likewise. From-SVN: r254222 |
||
Ville Voutilainen
|
957f5feacf |
Deduction guides for associative containers, debug mode deduction guide fixes.
* include/bits/stl_iterator.h (__iter_key_t) (__iter_val_t, __iter_to_alloc_t): New. * include/bits/stl_map.h: Add deduction guides. * include/bits/stl_multimap.h: Likewise. * include/bits/stl_multiset.h: Likewise. * include/bits/stl_set.h: Likewise. * include/bits/unordered_map.h: Likewise. * include/bits/unordered_set.h: Likewise. * include/debug/deque: Likewise. * include/debug/forward_list: Likewise. * include/debug/list: Likewise. * include/debug/map.h: Likewise. * include/debug/multimap.h: Likewise. * include/debug/multiset.h: Likewise. * include/debug/set.h: Likewise. * include/debug/unordered_map: Likewise. * include/debug/unordered_set: Likewise. * include/debug/vector: Likewise. * testsuite/23_containers/map/cons/deduction.cc: New. * testsuite/23_containers/multimap/cons/deduction.cc: Likewise. * testsuite/23_containers/multiset/cons/deduction.cc: Likewise. * testsuite/23_containers/set/cons/deduction.cc: Likewise. * testsuite/23_containers/unordered_map/cons/deduction.cc: Likewise. * testsuite/23_containers/unordered_multimap/cons/deduction.cc: Likewise. * testsuite/23_containers/unordered_multiset/cons/deduction.cc: Likewise. * testsuite/23_containers/unordered_set/cons/deduction.cc: Likewise. From-SVN: r254113 |
||
François Dumont
|
8468bfe8cb |
libstdc++.exp (check_v3_target_normal_mode): Add c++config.h include.
2017-10-24 François Dumont <fdumont@gcc.gnu.org> * testsuite/lib/libstdc++.exp (check_v3_target_normal_mode): Add c++config.h include. (check_v3_target_normal_namespace): New. * testsuite/lib/dg-options.exp (dg-require-normal-namespace): New. * testsuite/18_support/headers/limits/synopsis.cc: Add latter. * testsuite/20_util/from_chars/requirements.cc: Likewise. * testsuite/20_util/headers/functional/synopsis.cc: Likewise. * testsuite/20_util/headers/memory/synopsis.cc: Likewise. * testsuite/20_util/headers/utility/synopsis.cc: Likewise. * testsuite/20_util/to_chars/requirements.cc: Likewise. * testsuite/21_strings/headers/string/synopsis.cc: Likewise. * testsuite/22_locale/headers/locale/synopsis.cc: Likewise. * testsuite/23_containers/headers/bitset/synopsis.cc: Likewise. * testsuite/23_containers/headers/deque/synopsis.cc: Likewise. * testsuite/23_containers/headers/forward_list/synopsis.cc: Likewise. * testsuite/23_containers/headers/list/synopsis.cc: Likewise. * testsuite/23_containers/headers/map/synopsis.cc: Likewise. * testsuite/23_containers/headers/queue/synopsis.cc: Likewise. * testsuite/23_containers/headers/set/synopsis.cc: Likewise. * testsuite/23_containers/headers/stack/synopsis.cc: Likewise. * testsuite/23_containers/headers/vector/synopsis.cc: Likewise. * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Likewise. * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: Likewise. * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: Likewise. * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise. * testsuite/24_iterators/headers/iterator/synopsis.cc: Likewise. * testsuite/24_iterators/headers/iterator/synopsis_c++11.cc: Likewise. * testsuite/24_iterators/headers/iterator/synopsis_c++14.cc: Likewise. * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: Likewise. * testsuite/26_numerics/complex/abi_tag.cc: Likewise. * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise. * testsuite/26_numerics/headers/valarray/synopsis.cc: Likewise. * testsuite/27_io/headers/fstream/synopsis.cc: Likewise. * testsuite/27_io/headers/ios/synopsis.cc: Likewise. * testsuite/27_io/headers/istream/synopsis.cc: Likewise. * testsuite/27_io/headers/ostream/synopsis.cc: Likewise. * testsuite/27_io/headers/sstream/synopsis.cc: Likewise. * testsuite/27_io/headers/streambuf/synopsis.cc: Likewise. From-SVN: r254060 |
||
François Dumont
|
1be043a140 |
re PR libstdc++/82558 (V8 JavaScript engine segfaults since r249235)
2017-10-16 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/82558 * include/bits/stl_bvector.h (fill): Add iterator offset check. * testsuite/23_containers/vector/bool/82558.cc: New. From-SVN: r253776 |
||
Jonathan Wakely
|
3b0dd4fea2 |
PR libstdc++/82522 overload map insert functions for rvalues (LWG 2354)
PR libstdc++/82522 * doc/xml/manual/intro.xml: Document LWG 2354 changes. * include/bits/stl_map.h (map::insert(value_type&&)) (map::insert(const_iterator, value_type&&)): Add overload for rvalues. * include/bits/stl_multimap.h (multimap::insert(value_type&&)) (multimap::insert(const_iterator, value_type&&)): Likewise. * include/bits/unordered_map.h (unordered_map::insert(value_type&&)) (unordered_map::insert(const_iterator, value_type&&)) (unordered_multimap::insert(value_type&&)) (unordered_multimap::insert(const_iterator, value_type&&)): Likewise. * testsuite/23_containers/map/modifiers/insert/dr2354.cc: New test. * testsuite/23_containers/multimap/modifiers/insert/dr2354.cc: New test. * testsuite/23_containers/unordered_map/insert/dr2354.cc: New test. * testsuite/23_containers/unordered_multimap/insert/dr2354.cc: New test. From-SVN: r253725 |
||
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
|
676c4146f5 |
PR libstdc++/81891 fix double-free in hashtable constructor
PR libstdc++/81891 * include/bits/hashtable.h (_Hashtable(_InputIterator, _InputIterator, size_type, const _H1&, const _H2&, const _Hash&, const _Equal&, const _ExtractKey&, const allocator_type&)): Let destructor do clean up if an exception is thrown. * testsuite/23_containers/unordered_map/cons/81891.cc: New. From-SVN: r251185 |
||
François Dumont
|
4f9e1f4d9d |
stl_list.h (struct _List_node_header): New.
2017-07-18 François Dumont <fdumont@gcc.gnu.org> * include/bits/stl_list.h (struct _List_node_header): New. (_List_impl()): Fix noexcept qualification. (_List_impl(_List_impl&&)): New, default. (_List_base()): Default. (_List_base(_List_base&&)): Default. (_List_base::_M_move_nodes): Adapt to use _List_node_header._M_move_nodes. (_List_base::_M_init): Likewise. (list<>()): Default. (list<>(list&&)): Default. (list<>::_M_move_assign(list&&, true_type)): Use _M_move_nodes. (__distance(_List_const_iterator<>, _List_const_iterator<>, input_iterator_tag)): Adapt. * testsuite/23_containers/list/allocator/default_init.cc: New. From-SVN: r250320 |
||
Rainer Orth
|
4f4b0ab85f |
Get rid of dg-skip-if etc. default args
libstdc++-v3: * testsuite: Remove dg-skip-if, dg-xfail-if, dg-xfail-run-if default args. libgomp: * testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if default args. * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove dg-xfail-run-if default args. gcc/testsuite: Remove dg-skip-if, dg-xfail-if, dg-xfail-run-if default args. From-SVN: r249339 |
||
Jonathan Wakely
|
14d8a91212 |
PR libstdc++/80893 don't run test for C++98 modes
PR libstdc++/80893 * testsuite/23_containers/vector/bool/80893.cc: Add { target c++11 }. From-SVN: r249338 |
||
Jonathan Wakely
|
6ec3c9c841 |
Fix missing returns in libstdc++ header and tests
* include/bits/locale_conv.h (wbuffer_convert::_M_put): Add missing return statement. * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc: Return void. * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc: Likewise. * testsuite/23_containers/map/modifiers/insert_or_assign/1.cc: Add missing return statements. * testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc: Likewise. * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc: Return void. * testsuite/special_functions/14_expint/pr68397.cc: Likewise. From-SVN: r249238 |
||
François Dumont
|
7d594224c2 |
stl_bvector.h (__fill_bvector(_Bit_type*, unsigned int, unsigned int, bool)): Change signature.
2017-06-16 François Dumont <fdumont@gcc.gnu.org> * include/bits/stl_bvector.h (__fill_bvector(_Bit_type*, unsigned int, unsigned int, bool)): Change signature. (std::fill(_Bit_iterator, _Bit_iterator, bool)): Adapt. (_Bvector_impl_data): New. (_Bvector_impl): Inherits from latter. (_Bvector_impl(_Bit_alloc_type&&)): Delete. (_Bvector_impl(_Bvector_impl&&)): New, default. (_Bvector_base()): Default. (_Bvector_base(_Bvector_base&&)): Default. (_Bvector_base::_M_move_data(_Bvector_base&&)): New. (vector(vector&&, const allocator_type&)): Use latter. (vector<bool>::operator=(vector&&)): Likewise. (vector<bool>::vector()): Default. (vector<bool>::vector(vector&&)): Default. (vector<bool>::assign(_InputIterator, _InputIterator)): Use _M_assign_aux. (vector<bool>::assign(initializer_list<bool>)): Likewise. (vector<bool>::_M_initialize_value(bool)): New. (vector<bool>(size_type, const bool&, const allocator_type&)): Use latter. (vector<bool>::_M_initialize_dispatch(_Integer, _Integer, __true_type)): Likewise. (vector<bool>::_M_fill_assign(size_t, bool)): Likewise. From-SVN: r249235 |
||
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 |
||
François Dumont
|
07cfc2d75d |
stl_tree.h (_Rb_tree_impl()): Restore _Node_allocator default init.
2017-06-12 François Dumont <fdumont@gcc.gnu.org> * include/bits/stl_tree.h (_Rb_tree_impl()): Restore _Node_allocator default init. * testsuite/util/testsuite_allocator.h (__gnu_test::default_init_allocator<>) New. * testsuite/23_containers/set/allocator/default_init.cc: New. * testsuite/23_containers/map/allocator/default_init.cc: New. From-SVN: r249136 |
||
Jonathan Wakely
|
225ab2b07b |
Add deduction guides for sequence containers (P0433R2, partial)
* include/bits/forward_list.h (forward_list): Add deduction guide. * include/bits/stl_deque.h (deque): Likewise. * include/bits/stl_list.h (list): Likewise. * include/bits/stl_vector.h (vector): Likewise. * testsuite/23_containers/deque/cons/deduction.cc: New. * testsuite/23_containers/forward_list/cons/deduction.cc: New. * testsuite/23_containers/list/cons/deduction.cc: New. * testsuite/23_containers/vector/cons/deduction.cc: New. From-SVN: r249054 |
||
Jonathan Wakely
|
046a84762b |
PR libstdc++/80893 Fix null dereference in vector<bool>
PR libstdc++/80893 * include/bits/stl_bvector.h (vector<bool>::_M_initialize): Avoid null pointer dereference when size is zero. * testsuite/23_containers/vector/bool/80893.cc: New. * testsuite/util/testsuite_allocator.h (PointerBase::PointerBase): Add non-explicit constructor from nullptr. (PointerBase::derived() const): Add const-qualified overload. From-SVN: r248734 |
||
Jonathan Wakely
|
85c05b5eec |
Fix order and types of members in C++17 insert_return_type structs
PR libstdc++/80761 * include/bits/node_handle.h (_Node_insert_return): Reorder members. (tuple_size, tuple_element): Remove partial specializations. * include/bits/stl_tree.h (_Rb_tree::insert_return_type): Use const_iterator for std::set. * testsuite/23_containers/map/modifiers/extract.cc: New. * testsuite/23_containers/set/modifiers/extract.cc: New. * testsuite/23_containers/unordered_map/modifiers/extract.cc: New. * testsuite/23_containers/unordered_set/modifiers/extract.cc: New. From-SVN: r248062 |
||
Jonathan Wakely
|
b26f45f069 |
PR libstdc++/80553 don't allow destroying non-destructible types
PR libstdc++/80553 * include/bits/stl_construct.h (_Destroy, _Destroy_n): Add static assertions to ensure type is destructible. (destroy_at, destroy, destroy_n): Move from stl_uninitialized.h. * include/bits/stl_uninitialized.h (destroy_at, destroy, destroy_n): Move to stl_construct.h. * testsuite/20_util/specialized_algorithms/memory_management_tools/ destroy_neg.cc: New test. * testsuite/23_containers/vector/cons/destructible_neg.cc: New test. From-SVN: r247379 |
||
Jonathan Wakely
|
9425300b41 |
Improve tests for vector and deque move-assignment
* testsuite/23_containers/deque/allocator/move_assign-2.cc: Improve comment. Ensure first test works because allocator type propagates and not because is_always_equal is true. * testsuite/23_containers/vector/52591.cc: Likewise. Restore original testcase that instantiates the move-assignment operator. From-SVN: r247284 |
||
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
|
af181c91a9 |
Add deduction guides for C++17 (P0433R2, partial)
* include/bits/shared_ptr.h (shared_ptr, weak_ptr): Add deduction guides for C++17. * include/bits/std_function.h (function): Likewise. * include/bits/stl_pair.h (pair): Likewise. * include/debug/array (__gnu_debug::array): Likewise. * include/std/array (array): Likewise. * include/std/functional (make_default_searcher) (make_boyer_moore_searcher, make_boyer_moore_horspool_searcher): Remove generator functions. * include/std/tuple (tuple): Add deduction guides. * include/std/valarray (valarray): Likewise. * testsuite/20_util/function_objects/searchers.cc: Adjust to use class template argument deduction instead of generator functions. * testsuite/20_util/function/cons/deduction.cc: New test. * testsuite/20_util/optional/cons/deduction_guide.cc: Rename to ... * testsuite/20_util/optional/cons/deduction.cc: ... here. * testsuite/20_util/pair/cons/deduction.cc: New test. * testsuite/20_util/shared_ptr/cons/deduction.cc: New test. * testsuite/20_util/tuple/cons/deduction.cc: New test. * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error. * testsuite/20_util/unique_ptr/cons/deduction_neg.cc: New test. * testsuite/20_util/weak_ptr/cons/deduction.cc: New test. * testsuite/23_containers/array/cons/deduction.cc: New test. * testsuite/23_containers/array/cons/deduction_neg.cc: New test. * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust dg-error. * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Likewise. * testsuite/26_numerics/valarray/deduction.cc: New test. * testsuite/30_threads/lock_guard/cons/deduction.cc: New test. * testsuite/30_threads/scoped_lock/cons/deduction.cc: New test. * testsuite/30_threads/unique_lock/cons/deduction.cc: New test. From-SVN: r246389 |
||
Ville Voutilainen
|
648c989484 |
re PR libstdc++/80034 (unqualified calls to std::distance in std::list::sort)
PR libstdc++/80034 * include/bits/list.tcc (merge(list&&)): Use const for the size_t in the catch-block. (merge(list&&, _StrictWeakOrdering)): Likewise. * testsuite/23_containers/list/operations/80034.cc: New. From-SVN: r246107 |
||
Jonathan Wakely
|
881191e865 |
Fix libstdc++ testsuite failures in C++98 and C++11 mode
* testsuite/23_containers/list/operations/78389.cc: Fix for C++11 mode. * testsuite/23_containers/priority_queue/requirements/constructible.cc: Mark as unsupported in C++98 mode. * testsuite/23_containers/queue/requirements/constructible.cc: Likewise. * testsuite/23_containers/stack/requirements/constructible.cc: Likewise. * testsuite/25_algorithms/make_heap/movable.cc: Fix for C++11 mode. From-SVN: r244950 |
||
Jonathan Wakely
|
437f43cc78 |
PR67085 pass comparison functions by reference in heap algorithms
PR libstdc++/67085 * include/bits/predefined_ops.h (_Iter_less_val, _Val_less_iter): Add converting constructors from _Iter_less_iter. (_Iter_comp_val, _Val_comp_iter): Add converting constructors from _Iter_comp_iter. (__iter_comp_val(_Iter_comp_iter<C>): Use converting constructor. (__val_comp_iter(_Iter_comp_iter<C>): Likewise. * include/bits/stl_heap.h (__is_heap_until, __push_heap, __pop_heap) (__make_heap, __sort_heap): Change _Compare parameters to references. (__is_heap, push_heap, __adjust_heap, __pop_heap, pop_heap) (__make_heap, make_heap, sort_heap, is_heap_until): Pass comparison functions as lvalues. (is_heap): Call __is_heap_until directly to avoid copying __comp. * testsuite/23_containers/priority_queue/67085.cc: Adjust test to count copies during construction with empty sequence. From-SVN: r244656 |
||
Jonathan Wakely
|
9ade9945a0 |
Fix unsafe moves inside loops
PR libstdc++/67085 * include/bits/stl_heap.h (__is_heap): Use _GLIBCXX_MOVE. (__make_heap, __sort_heap): Don't use _GLIBCXX_MOVE inside loops. * testsuite/23_containers/priority_queue/67085.cc: Adjust expected number of copies. * testsuite/25_algorithms/make_heap/movable.cc: New test. From-SVN: r244650 |
||
Jonathan Wakely
|
45b48129d5 |
PR67085 move comparison functions in heap operations
PR libstdc++/67085 * include/bits/stl_heap.h (push_heap, __adjust_heap, __pop_heap) (pop_heap, __make_heap, make_heap, __sort_heap, sort_heap): Use _GLIBCXX_MOVE when passing comparison function to other functions. (is_heap_until, is_heap): Use std::move when passing comparison function. * testsuite/23_containers/priority_queue/67085.cc: New test. From-SVN: r244648 |
||
Ville Voutilainen
|
53426b63b3 |
PR libstdc++/78389 fix backwards size adjustments.
PR libstdc++/78389 * include/bits/list.tcc (merge(list&&)): Fix backwards size adjustments. (merge(list&&, _StrictWeakOrdering)): Likewise. * testsuite/23_containers/list/operations/78389.cc: Add better test for the sizes. From-SVN: r244490 |
||
Jonathan Wakely
|
ac4664f9da |
Skip tests that are incompatible with Profile Mode
* testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc: Skip test when -D_GLIBCXX_PROFILE mode is included in options. * testsuite/23_containers/map/modifiers/extract.cc: Likewise. * 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/modifiers/insert_vs_emplace.cc: Likewise. * 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/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. From-SVN: r244464 |
||
Jonathan Wakely
|
90aa73309e |
Define cxx11-abi effective target for libstdc++ tests
PR libstdc++/79075 * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Remove redundant option from cxxflags. (check_effective_target_cxx11-abi): Define. * testsuite/21_strings/basic_string/allocator/71964.cc: Use cxx11-abi effective target. * testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise. * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc: Likewise. * testsuite/21_strings/basic_string/allocator/char/minimal.cc: Likewise. * testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise. * testsuite/21_strings/basic_string/allocator/char/move_assign.cc: Likewise. * testsuite/21_strings/basic_string/allocator/char/noexcept.cc: Likewise. * testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise. * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc: Likewise. * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc: Likewise. * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc: Likewise. * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc: Likewise. * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc: Likewise. * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc: Likewise. * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc: Likewise. * testsuite/23_containers/list/61347.cc: Likewise. * testsuite/27_io/basic_fstream/cons/base.cc: Likewise. * testsuite/27_io/ios_base/failure/cxx11.cc: Likewise. From-SVN: r244440 |
||
Ville Voutilainen
|
e5dcfacf43 |
re PR libstdc++/78389 (list::merge and list::sort are not exception safe)
PR libstdc++/78389 * include/bits/list.tcc (merge(list&&)): Adjust list sizes if the comparator throws. (merge(list&&, _StrictWeakOrdering)): Likewise. (sort()): Splice elements back from the scratch buffers if the comparator throws. (sort(_StrictWeakOrdering)): Likewise. * testsuite/23_containers/list/operations/78389.cc: New. From-SVN: r244439 |
||
Jonathan Wakely
|
45cac8baeb |
Mark test as XFAIL for C++17 mode
* testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Mark XFAIL for C++17 until node reinsertion supports fancy pointers. From-SVN: r244436 |
||
Jonathan Wakely
|
a1f009a65f |
PR77528 partially revert r244278 and define default constructors
PR libstdc++/77528 * include/bits/stl_queue.h (queue, priority_queue): Remove default member-initializers and define default constructors as templates with constraints. * include/bits/stl_stack.h (stack): Likewise. * testsuite/23_containers/priority_queue/requirements/constructible.cc: New. * testsuite/23_containers/priority_queue/requirements/ explicit_instantiation/1.cc: Test more instantiations. * testsuite/23_containers/priority_queue/requirements/ explicit_instantiation/1_c++98.cc: Likewise. * testsuite/23_containers/queue/requirements/constructible.cc: New. * testsuite/23_containers/stack/requirements/constructible.cc: New. From-SVN: r244374 |
||
Jonathan Wakely
|
b744bf4e18 |
PR78134 fix return types of heterogeneous lookup functions
PR libstdc++/78134 * include/bits/stl_map.h (map::lower_bound, map::upper_bound) (map::equal_range): Fix return type of heterogeneous overloads. * include/bits/stl_multimap.h (multimap::lower_bound) (multimap::upper_bound, multimap::equal_range): Likewise. * include/bits/stl_multiset.h (multiset::lower_bound) (multiset::upper_bound, multiset::equal_range): Likewise. * include/bits/stl_set.h (set::lower_bound, set::upper_bound) (set::equal_range): Likewise. * testsuite/23_containers/map/operations/2.cc * testsuite/23_containers/multimap/operations/2.cc * testsuite/23_containers/multiset/operations/2.cc * testsuite/23_containers/set/operations/2.cc From-SVN: r244318 |
||
Jonathan Wakely
|
b091b8dc0b |
PR78273 fix count to work with partitioning function
PR libstdc++/78273 * include/bits/stl_map.h (map::count<_Kt>(const _Kt&)): Don't assume the heterogeneous comparison can only find one match. * include/bits/stl_set.h (set::count<_Kt>(const _Kt&)): Likewise. * testsuite/23_containers/map/operations/2.cc: Test count works with comparison function that just partitions rather than sorting. * testsuite/23_containers/set/operations/2.cc: Likewise. From-SVN: r244317 |
||
Jonathan Wakely
|
d2e1d4b713 |
PR77528 add default constructors for container adaptors
PR libstdc++/77528 * include/bits/stl_queue.h (queue::c): Add default member initializer. (queue::queue()): Add constructor and define as defaulted. (queue::queue(_Sequence&&)): Remove default argument. (priority_queue::c, priority_queue::comp): Add default member initializers. (priority_queue::priority_queue()): Add constructor and define as defaulted. (priority_queue::priority_queue(const _Compare&, _Sequence&&)): Remove default argument for first parameter. * include/bits/stl_stack.h (stack::c): Add default member initializer. (stack::stack()): Add constructor and define as defaulted. (stack::stack(const _Sequence&)): Remove default argument. * testsuite/23_containers/priority_queue/requirements/ explicit_instantiation/1.cc: Test explicit instantiation with non-DefaultConstructible sequence. * testsuite/23_containers/priority_queue/77528.cc: New test. * testsuite/23_containers/priority_queue/requirements/ explicit_instantiation/1_c++0x.cc: Replace with 1_c++98.cc. * testsuite/23_containers/queue/77528.cc: New test. * testsuite/23_containers/queue/requirements/explicit_instantiation/ 1.cc: Test explicit instantiation with non-DefaultConstructible sequence. * testsuite/23_containers/queue/requirements/explicit_instantiation/ 1_c++0x.cc: Replace with 1_c++98.cc. * testsuite/23_containers/stack/77528.cc: New test. * testsuite/23_containers/stack/requirements/explicit_instantiation/ 1.cc: Test explicit instantiation with non-DefaultConstructible sequence. * testsuite/23_containers/stack/requirements/explicit_instantiation/ 1_c++0x.cc: Replace with 1_c++98.cc. From-SVN: r244278 |
||
Jakub Jelinek
|
cbe34bb5ed |
Update copyright years.
From-SVN: r243994 |
||
Jonathan Wakely
|
36b8852641 |
Add assertion to _Rb_tree::erase to check for end iterators
* include/bits/stl_tree.h (_Rb_tree::_M_erase_aux(const_iterator)): Add assertion for undefined argument. (_Rb_tree::_M_erase_aux(const_iterator, const_iterator)): Call _M_erase_aux directly instead of through erase. (_Rb_tree::_M_erase_aux(const Key&)): Likewise. * testsuite/23_containers/map/modifiers/erase/end_neg.cc: New test. From-SVN: r243757 |
||
Jonathan Wakely
|
1d752b4fee |
Delete std::swap for debug mode array
* include/debug/array (swap): Add deleted overload. * include/bits/stl_pair.h (swap): Remove redundant inline keyword from deleted overload. * include/bits/unique_ptr.h (swap): Likewise. * include/std/array (swap): Likewise. * include/std/optional (swap): Likewise. * include/std/tuple (swap): Likewise. * include/std/variant (swap): Likewise. * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust dg-error line numbers. * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/ tuple_element_debug_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Likewise. From-SVN: r243437 |
||
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 |
||
Ville Voutilainen
|
a2863bde75 |
Implement LWG 2766,
Swapping non-swappable types and LWG 2749, swappable traits for variants. * include/bits/move.h (swap(_Tp&, _Tp&)): Constrain with __is_tuple_like. * include/bits/stl_pair.h (swap(pair<_T1, _T2>&, pair<_T1, _T2>&)): Add a deleted overload. * include/bits/unique_ptr.h (swap(unique_ptr<_Tp, _Dp>&, unique_ptr<_Tp, _Dp>&)): Likewise. * include/std/array (swap(array<_Tp, _Nm>&, array<_Tp, _Nm>&)): Likewise. * include/std/optional (swap(optional<_Tp>&, optional<_Tp>&)): Likewise. * include/std/tuple (__is_tuple_like_impl, __is_tuple_like): Move to type_traits. (swap(tuple<_Elements...>&, tuple<_Elements...>&)): Add a deleted overload. * include/std/type_traits (__is_tuple_like_impl, __is_tuple_like): New. (swap(_Tp&, _Tp&)): Constrain with __is_tuple_like. * include/std/utility (__is_tuple_like_impl): Move to type_traits. * include/std/variant (swap(variant<_Types...>&, variant<_Types...>&)): Add a deleted overload. * testsuite/20_util/optional/swap/2.cc: Add tests for disabled swaps. * testsuite/20_util/pair/swap_cxx17.cc: New. * testsuite/20_util/tuple/swap_cxx17.cc: Likewise. * testsuite/20_util/unique_ptr/specialized_algorithms/swap_cxx17.cc: Likewise. * testsuite/20_util/variant/compile.cc: Add tests for disabled swaps. * testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc: New. * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Likewise. From-SVN: r243120 |
||
David Edelsohn
|
57e27acf28 |
re PR libstdc++/68838 (AIX 32 bit wchar_t testsuite failures)
PR libstdc++/68838 * testsuite/lib/libstdc++.exp (DEFAULT_CXXFLAGS): Add -Wl,-bmaxdata on AIX. * testsuite/23_containers/vector/profile/vector.cc: Remove dg-additional-options. From-SVN: r242967 |
||
Paolo Carlini
|
a9260b7eb6 |
57619.C: Rename to 57619.cc.
2016-10-17 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/unordered_map/insert/57619.C: Rename to 57619.cc. * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise. 2016-10-17 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/array/capacity/empty.cc: Remove 'test' variables. * testsuite/array/capacity/max_size.cc: Likewise. * testsuite/array/capacity/size.cc: Likewise. * testsuite/array/comparison_operators/equal.cc: Likewise. * testsuite/array/comparison_operators/greater.cc: Likewise. * testsuite/array/comparison_operators/greater_or_equal.cc: Likewise. * testsuite/array/comparison_operators/less.cc: Likewise. * testsuite/array/comparison_operators/less_or_equal.cc: Likewise. * testsuite/array/comparison_operators/not_equal.cc: Likewise. * testsuite/array/element_access/54388.cc: Likewise. * testsuite/array/element_access/at_out_of_range.cc: Likewise. * testsuite/array/element_access/back.cc: Likewise. * testsuite/array/element_access/data.cc: Likewise. * testsuite/array/element_access/front.cc: Likewise. * testsuite/array/iterators/end_is_one_past.cc: Likewise. * testsuite/array/requirements/contiguous.cc: Likewise. * testsuite/array/requirements/fill.cc: Likewise. * testsuite/array/requirements/member_swap.cc: Likewise. * testsuite/array/requirements/zero_sized_arrays.cc: Likewise. * testsuite/array/specialized_algorithms/swap.cc: Likewise. * testsuite/array/tuple_interface/tuple_element.cc: Likewise. * testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise. * testsuite/array/tuple_interface/tuple_size.cc: Likewise. * testsuite/bitset/all/1.cc: Likewise. * testsuite/bitset/cons/1.cc: Likewise. * testsuite/bitset/cons/16020.cc: Likewise. * testsuite/bitset/cons/2.cc: Likewise. * testsuite/bitset/cons/3.cc: Likewise. * testsuite/bitset/cons/50268.cc: Likewise. * testsuite/bitset/cons/6282.cc: Likewise. * testsuite/bitset/cons/dr1325-2.cc: Likewise. * testsuite/bitset/cons/dr396.cc: Likewise. * testsuite/bitset/ext/15361.cc: Likewise. * testsuite/bitset/input/1.cc: Likewise. * testsuite/bitset/operations/1.cc: Likewise. * testsuite/bitset/operations/13838.cc: Likewise. * testsuite/bitset/operations/2.cc: Likewise. * testsuite/bitset/test/1.cc: Likewise. * testsuite/bitset/to_string/1.cc: Likewise. * testsuite/bitset/to_string/dr396.cc: Likewise. * testsuite/bitset/to_ullong/1.cc: Likewise. * testsuite/bitset/to_ulong/1.cc: Likewise. * testsuite/deque/allocator/copy.cc: Likewise. * testsuite/deque/allocator/copy_assign.cc: Likewise. * testsuite/deque/allocator/ext_ptr.cc: Likewise. * testsuite/deque/allocator/minimal.cc: Likewise. * testsuite/deque/allocator/move.cc: Likewise. * testsuite/deque/allocator/move_assign.cc: Likewise. * testsuite/deque/allocator/swap.cc: Likewise. * testsuite/deque/capacity/29134-2.cc: Likewise. * testsuite/deque/capacity/29134.cc: Likewise. * testsuite/deque/capacity/moveable.cc: Likewise. * testsuite/deque/capacity/resize_size.cc: Likewise. * testsuite/deque/capacity/shrink_to_fit.cc: Likewise. * testsuite/deque/cons/1.cc: Likewise. * testsuite/deque/cons/2.cc: Likewise. * testsuite/deque/cons/assign/1.cc: Likewise. * testsuite/deque/cons/cons_size.cc: Likewise. * testsuite/deque/cons/moveable.cc: Likewise. * testsuite/deque/modifiers/erase/1.cc: Likewise. * testsuite/deque/modifiers/erase/2.cc: Likewise. * testsuite/deque/modifiers/erase/3.cc: Likewise. * testsuite/deque/modifiers/erase/moveable.cc: Likewise. * testsuite/deque/modifiers/moveable.cc: Likewise. * testsuite/deque/modifiers/push_back/49836.cc: Likewise. * testsuite/deque/modifiers/push_front/49836.cc: Likewise. * testsuite/deque/modifiers/swap/1.cc: Likewise. * testsuite/deque/modifiers/swap/2.cc: Likewise. * testsuite/deque/modifiers/swap/3.cc: Likewise. * testsuite/deque/operators/1.cc: Likewise. * testsuite/deque/operators/2.cc: Likewise. * testsuite/forward_list/allocator/copy.cc: Likewise. * testsuite/forward_list/allocator/copy_assign.cc: Likewise. * testsuite/forward_list/allocator/ext_ptr.cc: Likewise. * testsuite/forward_list/allocator/minimal.cc: Likewise. * testsuite/forward_list/allocator/move.cc: Likewise. * testsuite/forward_list/allocator/move_assign.cc: Likewise. * testsuite/forward_list/allocator/swap.cc: Likewise. * testsuite/forward_list/capacity/1.cc: Likewise. * testsuite/forward_list/capacity/resize_size.cc: Likewise. * testsuite/forward_list/comparable.cc: Likewise. * testsuite/forward_list/cons/1.cc: Likewise. * testsuite/forward_list/cons/2.cc: Likewise. * testsuite/forward_list/cons/3.cc: Likewise. * testsuite/forward_list/cons/4.cc: Likewise. * testsuite/forward_list/cons/5.cc: Likewise. * testsuite/forward_list/cons/6.cc: Likewise. * testsuite/forward_list/cons/7.cc: Likewise. * testsuite/forward_list/cons/8.cc: Likewise. * testsuite/forward_list/cons/9.cc: Likewise. * testsuite/forward_list/cons/cons_size.cc: Likewise. * testsuite/forward_list/cons/moveable.cc: Likewise. * testsuite/forward_list/debug/clear.cc: Likewise. * testsuite/forward_list/debug/construct4_neg.cc: Likewise. * testsuite/forward_list/debug/erase_after1_neg.cc: Likewise. * testsuite/forward_list/debug/move_assign_neg.cc: Likewise. * testsuite/forward_list/debug/move_constructor.cc: Likewise. * testsuite/forward_list/debug/move_neg.cc: Likewise. * testsuite/forward_list/debug/splice_after.cc: Likewise. * testsuite/forward_list/debug/swap.cc: Likewise. * testsuite/forward_list/modifiers/1.cc: Likewise. * testsuite/forward_list/modifiers/2.cc: Likewise. * testsuite/forward_list/modifiers/3.cc: Likewise. * testsuite/forward_list/modifiers/4.cc: Likewise. * testsuite/forward_list/modifiers/5.cc: Likewise. * testsuite/forward_list/modifiers/6.cc: Likewise. * testsuite/forward_list/operations/1.cc: Likewise. * testsuite/forward_list/operations/2.cc: Likewise. * testsuite/forward_list/operations/3.cc: Likewise. * testsuite/forward_list/operations/4.cc: Likewise. * testsuite/forward_list/operations/5.cc: Likewise. * testsuite/forward_list/operations/6.cc: Likewise. * testsuite/forward_list/operations/7.cc: Likewise. * testsuite/forward_list/operations/remove_freed.cc: Likewise. * testsuite/list/61347.cc: Likewise. * testsuite/list/allocator/copy.cc: Likewise. * testsuite/list/allocator/copy_assign.cc: Likewise. * testsuite/list/allocator/minimal.cc: Likewise. * testsuite/list/allocator/move.cc: Likewise. * testsuite/list/allocator/move_assign.cc: Likewise. * testsuite/list/allocator/swap.cc: Likewise. * testsuite/list/capacity/1.h: Likewise. * testsuite/list/capacity/29134.cc: Likewise. * testsuite/list/capacity/resize_size.cc: Likewise. * testsuite/list/cons/1.h: Likewise. * testsuite/list/cons/2.h: Likewise. * testsuite/list/cons/3.h: Likewise. * testsuite/list/cons/4.h: Likewise. * testsuite/list/cons/5.h: Likewise. * testsuite/list/cons/6.h: Likewise. * testsuite/list/cons/7.h: Likewise. * testsuite/list/cons/8.h: Likewise. * testsuite/list/cons/9.h: Likewise. * testsuite/list/cons/cons_size.cc: Likewise. * testsuite/list/cons/moveable.h: Likewise. * testsuite/list/debug/invalidation/1.cc: Likewise. * testsuite/list/debug/invalidation/2.cc: Likewise. * testsuite/list/debug/invalidation/3.cc: Likewise. * testsuite/list/debug/invalidation/4.cc: Likewise. * testsuite/list/modifiers/1.h: Likewise. * testsuite/list/modifiers/2.h: Likewise. * testsuite/list/modifiers/3.h: Likewise. * testsuite/list/modifiers/insert/25288.h: Likewise. * testsuite/list/modifiers/swap/1.h: Likewise. * testsuite/list/modifiers/swap/2.h: Likewise. * testsuite/list/modifiers/swap/3.h: Likewise. * testsuite/list/operations/1.h: Likewise. * testsuite/list/operations/2.h: Likewise. * testsuite/list/operations/3.h: Likewise. * testsuite/list/operations/4.h: Likewise. * testsuite/list/operations/42352.cc: Likewise. * testsuite/map/allocator/copy.cc: Likewise. * testsuite/map/allocator/copy_assign.cc: Likewise. * testsuite/map/allocator/init-list.cc: Likewise. * testsuite/map/allocator/minimal.cc: Likewise. * testsuite/map/allocator/move.cc: Likewise. * testsuite/map/allocator/move_assign.cc: Likewise. * testsuite/map/allocator/swap.cc: Likewise. * testsuite/map/capacity/29134.cc: Likewise. * testsuite/map/cons/moveable.cc: Likewise. * testsuite/map/debug/construct5_neg.cc: Likewise. * testsuite/map/debug/move_assign_neg.cc: Likewise. * testsuite/map/debug/move_neg.cc: Likewise. * testsuite/map/element_access/1.cc: Likewise. * testsuite/map/element_access/2.cc: Likewise. * testsuite/map/element_access/39901.cc: Likewise. * testsuite/map/init-list.cc: Likewise. * testsuite/map/modifiers/dr130.cc: Likewise. * testsuite/map/modifiers/emplace/1.cc: Likewise. * testsuite/map/modifiers/extract.cc: Likewise. * testsuite/map/modifiers/insert/1.cc: Likewise. * testsuite/map/modifiers/insert/16813.cc: Likewise. * testsuite/map/modifiers/insert/2.cc: Likewise. * testsuite/map/modifiers/insert/3.cc: Likewise. * testsuite/map/modifiers/insert/4.cc: Likewise. * testsuite/map/modifiers/insert/5.cc: Likewise. * testsuite/map/modifiers/insert_or_assign/1.cc: Likewise. * testsuite/map/modifiers/merge.cc: Likewise. * testsuite/map/modifiers/swap/1.cc: Likewise. * testsuite/map/modifiers/swap/2.cc: Likewise. * testsuite/map/modifiers/swap/3.cc: Likewise. * testsuite/map/modifiers/try_emplace/1.cc: Likewise. * testsuite/map/operations/1.cc: Likewise. * testsuite/map/operations/count.cc: Likewise. * testsuite/map/operators/1_neg.cc: Likewise. * testsuite/map/operators/2.cc: Likewise. * testsuite/multimap/allocator/copy.cc: Likewise. * testsuite/multimap/allocator/copy_assign.cc: Likewise. * testsuite/multimap/allocator/init-list.cc: Likewise. * testsuite/multimap/allocator/minimal.cc: Likewise. * testsuite/multimap/allocator/move.cc: Likewise. * testsuite/multimap/allocator/move_assign.cc: Likewise. * testsuite/multimap/allocator/swap.cc: Likewise. * testsuite/multimap/capacity/29134.cc: Likewise. * testsuite/multimap/cons/moveable.cc: Likewise. * testsuite/multimap/debug/construct5_neg.cc: Likewise. * testsuite/multimap/debug/move_assign_neg.cc: Likewise. * testsuite/multimap/debug/move_neg.cc: Likewise. * testsuite/multimap/init-list.cc: Likewise. * testsuite/multimap/modifiers/dr130.cc: Likewise. * testsuite/multimap/modifiers/emplace/1.cc: Likewise. * testsuite/multimap/modifiers/extract.cc: Likewise. * testsuite/multimap/modifiers/insert/1.cc: Likewise. * testsuite/multimap/modifiers/insert/2.cc: Likewise. * testsuite/multimap/modifiers/insert/22102.cc: Likewise. * testsuite/multimap/modifiers/insert/3.cc: Likewise. * testsuite/multimap/modifiers/insert/4.cc: Likewise. * testsuite/multimap/modifiers/merge.cc: Likewise. * testsuite/multimap/modifiers/swap/1.cc: Likewise. * testsuite/multimap/modifiers/swap/2.cc: Likewise. * testsuite/multimap/modifiers/swap/3.cc: Likewise. * testsuite/multimap/operations/1.cc: Likewise. * testsuite/multimap/operations/count.cc: Likewise. * testsuite/multiset/allocator/copy.cc: Likewise. * testsuite/multiset/allocator/copy_assign.cc: Likewise. * testsuite/multiset/allocator/init-list.cc: Likewise. * testsuite/multiset/allocator/minimal.cc: Likewise. * testsuite/multiset/allocator/move.cc: Likewise. * testsuite/multiset/allocator/move_assign.cc: Likewise. * testsuite/multiset/allocator/swap.cc: Likewise. * testsuite/multiset/capacity/29134.cc: Likewise. * testsuite/multiset/cons/moveable.cc: Likewise. * testsuite/multiset/debug/construct5_neg.cc: Likewise. * testsuite/multiset/debug/invalidation/2.cc: Likewise. * testsuite/multiset/debug/move_assign_neg.cc: Likewise. * testsuite/multiset/debug/move_neg.cc: Likewise. * testsuite/multiset/init-list.cc: Likewise. * testsuite/multiset/modifiers/dr130.cc: Likewise. * testsuite/multiset/modifiers/emplace/1.cc: Likewise. * testsuite/multiset/modifiers/extract.cc: Likewise. * testsuite/multiset/modifiers/insert/1.cc: Likewise. * testsuite/multiset/modifiers/insert/2.cc: Likewise. * testsuite/multiset/modifiers/insert/22102.cc: Likewise. * testsuite/multiset/modifiers/insert/3.cc: Likewise. * testsuite/multiset/modifiers/insert/4.cc: Likewise. * testsuite/multiset/modifiers/merge.cc: Likewise. * testsuite/multiset/modifiers/swap/1.cc: Likewise. * testsuite/multiset/modifiers/swap/2.cc: Likewise. * testsuite/multiset/modifiers/swap/3.cc: Likewise. * testsuite/multiset/operations/1.cc: Likewise. * testsuite/multiset/operations/count.cc: Likewise. * testsuite/priority_queue/moveable.cc: Likewise. * testsuite/queue/moveable.cc: Likewise. * testsuite/set/allocator/copy.cc: Likewise. * testsuite/set/allocator/copy_assign.cc: Likewise. * testsuite/set/allocator/init-list.cc: Likewise. * testsuite/set/allocator/minimal.cc: Likewise. * testsuite/set/allocator/move.cc: Likewise. * testsuite/set/allocator/move_assign.cc: Likewise. * testsuite/set/allocator/swap.cc: Likewise. * testsuite/set/capacity/29134.cc: Likewise. * testsuite/set/cons/moveable.cc: Likewise. * testsuite/set/debug/construct5_neg.cc: Likewise. * testsuite/set/debug/invalidation/2.cc: Likewise. * testsuite/set/debug/move_assign_neg.cc: Likewise. * testsuite/set/debug/move_neg.cc: Likewise. * testsuite/set/init-list.cc: Likewise. * testsuite/set/modifiers/17948.cc: Likewise. * testsuite/set/modifiers/dr130.cc: Likewise. * testsuite/set/modifiers/emplace/1.cc: Likewise. * testsuite/set/modifiers/extract.cc: Likewise. * testsuite/set/modifiers/insert/1.cc: Likewise. * testsuite/set/modifiers/insert/2.cc: Likewise. * testsuite/set/modifiers/insert/3.cc: Likewise. * testsuite/set/modifiers/merge.cc: Likewise. * testsuite/set/modifiers/swap/1.cc: Likewise. * testsuite/set/modifiers/swap/2.cc: Likewise. * testsuite/set/modifiers/swap/3.cc: Likewise. * testsuite/set/operations/1.cc: Likewise. * testsuite/set/operations/count.cc: Likewise. * testsuite/set/operators/1_neg.cc: Likewise. * testsuite/unordered_map/allocator/copy.cc: Likewise. * testsuite/unordered_map/allocator/copy_assign.cc: Likewise. * testsuite/unordered_map/allocator/minimal.cc: Likewise. * testsuite/unordered_map/allocator/move.cc: Likewise. * testsuite/unordered_map/allocator/move_assign.cc: Likewise. * testsuite/unordered_map/allocator/swap.cc: Likewise. * testsuite/unordered_map/cons/moveable.cc: Likewise. * testsuite/unordered_map/debug/construct5_neg.cc: Likewise. * testsuite/unordered_map/debug/move_assign_neg.cc: Likewise. * testsuite/unordered_map/debug/move_neg.cc: Likewise. * testsuite/unordered_map/dr761.cc: Likewise. * testsuite/unordered_map/erase/1.cc: Likewise. * testsuite/unordered_map/erase/24061-map.cc: Likewise. * testsuite/unordered_map/erase/54276.cc: Likewise. * testsuite/unordered_map/hash_policy/dr1189.cc: Likewise. * testsuite/unordered_map/init-list.cc: Likewise. * testsuite/unordered_map/insert/24061-map.cc: Likewise. * testsuite/unordered_map/insert/57619.C: Likewise. * testsuite/unordered_map/insert/array_syntax.cc: Likewise. * testsuite/unordered_map/insert/array_syntax_move.cc: Likewise. * testsuite/unordered_map/insert/map_range.cc: Likewise. * testsuite/unordered_map/insert/map_single.cc: Likewise. * testsuite/unordered_map/insert/map_single_move-1.cc: Likewise. * testsuite/unordered_map/insert/map_single_move-2.cc: Likewise. * testsuite/unordered_map/modifiers/61667.cc: Likewise. * testsuite/unordered_map/modifiers/emplace.cc: Likewise. * testsuite/unordered_map/modifiers/extract.cc: Likewise. * testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise. * testsuite/unordered_map/modifiers/merge.cc: Likewise. * testsuite/unordered_map/modifiers/reserve.cc: Likewise. * testsuite/unordered_map/modifiers/try_emplace.cc: Likewise. * testsuite/unordered_map/operations/count.cc: Likewise. * testsuite/unordered_map/operators/1.cc: Likewise. * testsuite/unordered_map/operators/2.cc: Likewise. * testsuite/unordered_multimap/allocator/copy.cc: Likewise. * testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise. * testsuite/unordered_multimap/allocator/minimal.cc: Likewise. * testsuite/unordered_multimap/allocator/move.cc: Likewise. * testsuite/unordered_multimap/allocator/move_assign.cc: Likewise. * testsuite/unordered_multimap/allocator/swap.cc: Likewise. * testsuite/unordered_multimap/cons/moveable.cc: Likewise. * testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise. * testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise. * testsuite/unordered_multimap/debug/move_neg.cc: Likewise. * testsuite/unordered_multimap/erase/1.cc: Likewise. * testsuite/unordered_multimap/erase/2.cc: Likewise. * testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise. * testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise. * testsuite/unordered_multimap/erase/54276.cc: Likewise. * testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise. * testsuite/unordered_multimap/init-list.cc: Likewise. * testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise. * testsuite/unordered_multimap/insert/51866.cc: Likewise. * testsuite/unordered_multimap/insert/52476.cc: Likewise. * testsuite/unordered_multimap/insert/53115.cc: Likewise. * testsuite/unordered_multimap/insert/57619.C: Likewise. * testsuite/unordered_multimap/insert/hint.cc: Likewise. * testsuite/unordered_multimap/insert/multimap_range.cc: Likewise. * testsuite/unordered_multimap/insert/multimap_single.cc: Likewise. * testsuite/unordered_multimap/insert/multimap_single_move-1.cc: Likewise. * testsuite/unordered_multimap/insert/multimap_single_move-2.cc: Likewise. * testsuite/unordered_multimap/modifiers/emplace.cc: Likewise. * testsuite/unordered_multimap/modifiers/extract.cc: Likewise. * testsuite/unordered_multimap/modifiers/merge.cc: Likewise. * testsuite/unordered_multimap/modifiers/reserve.cc: Likewise. * testsuite/unordered_multimap/operations/count.cc: Likewise. * testsuite/unordered_multimap/operators/1.cc: Likewise. * testsuite/unordered_multimap/operators/2.cc: Likewise. * testsuite/unordered_multiset/allocator/copy.cc: Likewise. * testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise. * testsuite/unordered_multiset/allocator/minimal.cc: Likewise. * testsuite/unordered_multiset/allocator/move.cc: Likewise. * testsuite/unordered_multiset/allocator/move_assign.cc: Likewise. * testsuite/unordered_multiset/allocator/swap.cc: Likewise. * testsuite/unordered_multiset/cons/copy.cc: Likewise. * testsuite/unordered_multiset/cons/moveable.cc: Likewise. * testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise. * testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise. * testsuite/unordered_multiset/debug/move_neg.cc: Likewise. * testsuite/unordered_multiset/erase/1.cc: Likewise. * testsuite/unordered_multiset/erase/2.cc: Likewise. * testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise. * testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise. * testsuite/unordered_multiset/init-list.cc: Likewise. * testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise. * testsuite/unordered_multiset/insert/51866.cc: Likewise. * testsuite/unordered_multiset/insert/52476.cc: Likewise. * testsuite/unordered_multiset/insert/53115.cc: Likewise. * testsuite/unordered_multiset/insert/hash_policy.cc: Likewise. * testsuite/unordered_multiset/insert/multiset_range.cc: Likewise. * testsuite/unordered_multiset/insert/multiset_single.cc: Likewise. * testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise. * testsuite/unordered_multiset/modifiers/emplace.cc: Likewise. * testsuite/unordered_multiset/modifiers/extract.cc: Likewise. * testsuite/unordered_multiset/modifiers/merge.cc: Likewise. * testsuite/unordered_multiset/modifiers/reserve.cc: Likewise. * testsuite/unordered_multiset/operations/count.cc: Likewise. * testsuite/unordered_multiset/operators/1.cc: Likewise. * testsuite/unordered_set/allocator/copy.cc: Likewise. * testsuite/unordered_set/allocator/copy_assign.cc: Likewise. * testsuite/unordered_set/allocator/ext_ptr.cc: Likewise. * testsuite/unordered_set/allocator/minimal.cc: Likewise. * testsuite/unordered_set/allocator/move.cc: Likewise. * testsuite/unordered_set/allocator/move_assign.cc: Likewise. * testsuite/unordered_set/allocator/swap.cc: Likewise. * testsuite/unordered_set/buckets/swap.cc: Likewise. * testsuite/unordered_set/cons/moveable.cc: Likewise. * testsuite/unordered_set/debug/construct5_neg.cc: Likewise. * testsuite/unordered_set/debug/debug_functions.cc: Likewise. * testsuite/unordered_set/debug/move_assign_neg.cc: Likewise. * testsuite/unordered_set/debug/move_neg.cc: Likewise. * testsuite/unordered_set/erase/1.cc: Likewise. * testsuite/unordered_set/erase/24061-set.cc: Likewise. * testsuite/unordered_set/hash_policy/26132.cc: Likewise. * testsuite/unordered_set/hash_policy/71181.cc: Likewise. * testsuite/unordered_set/hash_policy/dr1189.cc: Likewise. * testsuite/unordered_set/hash_policy/load_factor.cc: Likewise. * testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise. * testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise. * testsuite/unordered_set/hash_policy/rehash.cc: Likewise. * testsuite/unordered_set/init-list.cc: Likewise. * testsuite/unordered_set/insert/24061-set.cc: Likewise. * testsuite/unordered_set/insert/hash_policy.cc: Likewise. * testsuite/unordered_set/insert/move_range.cc: Likewise. * testsuite/unordered_set/insert/set_range.cc: Likewise. * testsuite/unordered_set/insert/set_single.cc: Likewise. * testsuite/unordered_set/insert/set_single_move.cc: Likewise. * testsuite/unordered_set/max_load_factor/robustness.cc: Likewise. * testsuite/unordered_set/modifiers/emplace.cc: Likewise. * testsuite/unordered_set/modifiers/extract.cc: Likewise. * testsuite/unordered_set/modifiers/merge.cc: Likewise. * testsuite/unordered_set/modifiers/reserve.cc: Likewise. * testsuite/unordered_set/modifiers/swap.cc: Likewise. * testsuite/unordered_set/operations/count.cc: Likewise. * testsuite/unordered_set/operators/1.cc: Likewise. * testsuite/vector/allocator/copy.cc: Likewise. * testsuite/vector/allocator/copy_assign.cc: Likewise. * testsuite/vector/allocator/ext_ptr.cc: Likewise. * testsuite/vector/allocator/minimal.cc: Likewise. * testsuite/vector/allocator/move.cc: Likewise. * testsuite/vector/allocator/move_assign.cc: Likewise. * testsuite/vector/allocator/swap.cc: Likewise. * testsuite/vector/bool/6886.cc: Likewise. * testsuite/vector/bool/72847.cc: Likewise. * testsuite/vector/bool/allocator/copy.cc: Likewise. * testsuite/vector/bool/allocator/copy_assign.cc: Likewise. * testsuite/vector/bool/allocator/ext_ptr.cc: Likewise. * testsuite/vector/bool/allocator/move.cc: Likewise. * testsuite/vector/bool/allocator/move_assign.cc: Likewise. * testsuite/vector/bool/allocator/swap.cc: Likewise. * testsuite/vector/bool/capacity/1.cc: Likewise. * testsuite/vector/bool/capacity/29134.cc: Likewise. * testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise. * testsuite/vector/bool/cons/1.cc: Likewise. * testsuite/vector/bool/cons/2.cc: Likewise. * testsuite/vector/bool/modifiers/erase/1.cc: Likewise. * testsuite/vector/bool/modifiers/insert/1.cc: Likewise. * testsuite/vector/bool/modifiers/insert/31370.cc: Likewise. * testsuite/vector/bool/modifiers/swap/1.cc: Likewise. * testsuite/vector/bool/modifiers/swap/2.cc: Likewise. * testsuite/vector/bool/swap.cc: Likewise. * testsuite/vector/capacity/1.cc: Likewise. * testsuite/vector/capacity/2.cc: Likewise. * testsuite/vector/capacity/29134-2.cc: Likewise. * testsuite/vector/capacity/29134.cc: Likewise. * testsuite/vector/capacity/44190.cc: Likewise. * testsuite/vector/capacity/8230.cc: Likewise. * testsuite/vector/capacity/reserve/moveable.cc: Likewise. * testsuite/vector/capacity/reserve/moveable2.cc: Likewise. * testsuite/vector/capacity/resize/1.cc: Likewise. * testsuite/vector/capacity/resize/moveable.cc: Likewise. * testsuite/vector/capacity/resize/moveable2.cc: Likewise. * testsuite/vector/capacity/resize/resize_size.cc: Likewise. * testsuite/vector/capacity/shrink_to_fit.cc: Likewise. * testsuite/vector/capacity/shrink_to_fit2.cc: Likewise. * testsuite/vector/cons/3.cc: Likewise. * testsuite/vector/cons/4.cc: Likewise. * testsuite/vector/cons/cons_size.cc: Likewise. * testsuite/vector/cons/moveable.cc: Likewise. * testsuite/vector/data_access/1.cc: Likewise. * testsuite/vector/debug/debug_functions.cc: Likewise. * testsuite/vector/debug/move_assign_neg.cc: Likewise. * testsuite/vector/debug/move_neg.cc: Likewise. * testsuite/vector/debug/multithreaded_swap.cc: Likewise. * testsuite/vector/element_access/1.cc: Likewise. * testsuite/vector/ext_pointer/citerators.cc: Likewise. * testsuite/vector/ext_pointer/data_access.cc: Likewise. * testsuite/vector/ext_pointer/modifiers/element.cc: Likewise. * testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise. * testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise. * testsuite/vector/ext_pointer/resize.cc: Likewise. * testsuite/vector/modifiers/1.cc: Likewise. * testsuite/vector/modifiers/2.cc: Likewise. * testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise. * testsuite/vector/modifiers/erase/1.cc: Likewise. * testsuite/vector/modifiers/erase/moveable.cc: Likewise. * testsuite/vector/modifiers/insert/1.cc: Likewise. * testsuite/vector/modifiers/insert/self_insert.cc: Likewise. * testsuite/vector/modifiers/moveable.cc: Likewise. * testsuite/vector/modifiers/moveable2.cc: Likewise. * testsuite/vector/modifiers/push_back/49836.cc: Likewise. * testsuite/vector/modifiers/swap/1.cc: Likewise. * testsuite/vector/modifiers/swap/2.cc: Likewise. * testsuite/vector/modifiers/swap/3.cc: Likewise. * testsuite/vector/zero_sized_allocations.cc: Likewise. From-SVN: r241241 |
||
Jonathan Wakely
|
594ef205ae |
Implement P0084R2, Emplace return type, for C++17
* doc/xml/manual/status_cxx2017.xml: Update status. * doc/html/*: Regenerate. * include/bits/deque.tcc (deque::emplace_front, deque::emplace_back): Return a reference in C++17 mode. * include/bits/forward_list.h (forward_list::emplace_front): Likewise. * include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise. * include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back): Likewise. * include/bits/stl_list.h (list::emplace_front, list::emplace_back): Likewise. * include/bits/stl_queue.h (queue::emplace): Likewise. * include/bits/stl_stack.h (stack::emplace): Likewise. * include/bits/stl_vector.h (vector::emplace_back): Likewise. * include/bits/vector.tcc (vector::emplace_back): Likewise. * include/debug/deque (__gnu_debug::deque::emplace_front) (__gnu_debug::deque::emplace_back): Likewise. * include/debug/vector (__gnu_debug::vector::emplace_back): Likewise. * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc: New. * testsuite/23_containers/forward_list/modifiers/ emplace_cxx17_return.cc: New. * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New. * testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New. * testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New. * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New. * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc: New. From-SVN: r241234 |
||
Jonathan Wakely
|
92805612f4 |
PR 70101 fix allocator-extended ctors for std::priority_queue
PR libstdc++/70101 * include/bits/stl_queue.h (priority_queue): Fix allocator-extended constructors. * testsuite/23_containers/priority_queue/allocator.cc: New test. From-SVN: r240781 |
||
Jonathan Wakely
|
a2a64b499a |
77864 Fix noexcept conditions for map/set default constructors
PR libstdc++/77864 * include/bits/stl_map.h (map::map()): Use nothrow constructibility of comparison function in conditional noexcept. * include/bits/stl_multimap.h (multimap::multimap()): Likewise. * include/bits/stl_multiset.h (multiset::multiset()): Likewise. * include/bits/stl_set.h (set::set()): Likewise. * testsuite/23_containers/map/cons/noexcept_default_construct.cc: New test. * testsuite/23_containers/multimap/cons/noexcept_default_construct.cc: Likewise. * testsuite/23_containers/multiset/cons/noexcept_default_construct.cc: Likewise. * testsuite/23_containers/set/cons/noexcept_default_construct.cc: Likewise. From-SVN: r240780 |
||
François Dumont
|
d8bbd665a1 |
debug.cc: Include debug/vector.
2016-09-25 François Dumont <fdumont@gcc.gnu.org> * src/c++11/debug.cc: Include debug/vector. Include cctype. Remove functional. (get_safe_base_mutex): Get mutex based on address lowest non nil bits. * testsuite/23_containers/vector/debug/mutex_association.cc: New. From-SVN: r240479 |
||
Jonathan Wakely
|
2dbe56bdfb |
Implement C++17 node extraction and insertion (P0083R5)
* doc/xml/manual/status_cxx2017.xml: Document status. * doc/html/*: Regenerate. * include/Makefile.am: Add bits/node_handle.h and reorder. * include/Makefile.in: Regenerate. * include/bits/hashtable.h (_Hashtable::node_type) (_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node) (_Hashtable::_M_reinsert_node_multi, _Hashtable::extract) (_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define. (_Hash_merge_helper): Define primary template. * include/bits/node_handle.h: New header. * include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as friend. (map::node_type, map::insert_return_type, map::extract, map::merge) (map::insert(node_type&&), map::insert(const_iterator, node_type&&)): Define new members. (_Rb_tree_merge_helper): Specialize for map. * include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper as friend. (multimap::node_type, multimap::extract, multimap::merge) (multimap::insert(node_type&&)) (multimap::insert(const_iterator, node_type&&)): Define. (_Rb_tree_merge_helper): Specialize for multimap. * include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper as friend. (multiset::node_type, multiset::extract, multiset::merge) (multiset::insert(node_type&&)) (multiset::insert(const_iterator, node_type&&)): Define. * include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as friend. (set::node_type, set::insert_return_type, set::extract, set::merge) (set::insert(node_type&&), set::insert(const_iterator, node_type&&)): Define. (_Rb_tree_merge_helper): Specialize for set. * include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend. (_Rb_tree::node_type, _Rb_tree::insert_return_type) (_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal) (_Rb_tree::_M_reinsert_node_hint_unique) (_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract) (_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define. (_Rb_tree_merge_helper): Specialize for multiset. * include/bits/unordered_map.h (unordered_map): Declare unordered_map<> and unordered_multimap<> as friends. (unordered_map::node_type, unordered_map::insert_return_type) (unordered_map::extract, unordered_map::merge) (unordered_map::insert(node_type&&)) (unordered_map::insert(const_iterator, node_type&&)) (unordered_multimap): Declare _Hash_merge_helper as friend. (unordered_multimap::node_type, unordered_multimap::extract) (unordered_multimap::merge, unordered_multimap::insert(node_type&&)) (unordered_multimap::insert(const_iterator, node_type&&)): Define. (_Hash_merge_helper): Specialize for unordered maps and multimaps. * include/bits/unordered_set.h (unordered_set, unordered_multiset): Declare _Hash_merge_helper as friend. (unordered_set::node_type, unordered_set::insert_return_type) (unordered_set::extract, unordered_set::merge) (unordered_set::insert(node_type&&)) (unordered_set::insert(const_iterator, node_type&&)): Define. (unordered_multiset::node_type, unordered_multiset::extract) (unordered_multiset::merge, unordered_multiset::insert(node_type&&)) (unordered_multiset::insert(const_iterator, node_type&&)): Define. (_Hash_merge_helper): Specialize for unordered sets and multisets. * include/debug/map.h (map): Add using declarations or forwarding functions for new members. * include/debug/map.h (multimap): Likewise. * include/debug/map.h (multiset): Likewise. * include/debug/map.h (set): Likewise. * include/debug/unordered_map (unordered_map, unordered_multimap): Likewise. * include/debug/unordered_set( unordered_set, unordered_multiset): Likewise. * python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New helper function. (get_value_from_list_node, get_value_from_Rb_tree_node): Use helper. (StdNodeHandlePrinter): Define printer for node handles. (build_libstdcxx_dictionary): Register StdNodeHandlePrinter. * testsuite/23_containers/map/modifiers/extract.cc: New. * testsuite/23_containers/map/modifiers/merge.cc: New. * testsuite/23_containers/multimap/modifiers/extract.cc: New. * testsuite/23_containers/multimap/modifiers/merge.cc: New. * testsuite/23_containers/multiset/modifiers/extract.cc: New. * testsuite/23_containers/multiset/modifiers/merge.cc: New. * testsuite/23_containers/set/modifiers/extract.cc: New. * testsuite/23_containers/set/modifiers/merge.cc: New. * testsuite/23_containers/unordered_map/modifiers/extract.cc: New. * testsuite/23_containers/unordered_map/modifiers/merge.cc: New. * testsuite/23_containers/unordered_multimap/modifiers/extract.cc: New. * testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New. * testsuite/23_containers/unordered_multiset/modifiers/extract.cc: New. * testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New. * testsuite/23_containers/unordered_set/modifiers/extract.cc: New. * testsuite/23_containers/unordered_set/modifiers/merge.cc: New. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error lineno. * testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles. From-SVN: r240363 |