From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2168) id C92903858C39; Thu, 7 Oct 2021 00:16:56 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C92903858C39 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: GCC Administrator To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r12-4218] Daily bump. X-Act-Checkin: gcc X-Git-Author: GCC Administrator X-Git-Refname: refs/heads/master X-Git-Oldrev: 6aab794614d26007d6886d7440f2e8124a08416a X-Git-Newrev: 57c7ec62ee0fbc33cacc5feb3e26d3ad4f765cdb Message-Id: <20211007001656.C92903858C39@sourceware.org> Date: Thu, 7 Oct 2021 00:16:56 +0000 (GMT) X-BeenThere: libstdc++-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libstdc++-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Oct 2021 00:16:57 -0000 https://gcc.gnu.org/g:57c7ec62ee0fbc33cacc5feb3e26d3ad4f765cdb commit r12-4218-g57c7ec62ee0fbc33cacc5feb3e26d3ad4f765cdb Author: GCC Administrator Date: Thu Oct 7 00:16:24 2021 +0000 Daily bump. Diff: --- gcc/ChangeLog | 53 ++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/c-family/ChangeLog | 14 ++++++++++++ gcc/cp/ChangeLog | 49 ++++++++++++++++++++++++++++++++++++++++ gcc/fortran/ChangeLog | 5 +++++ gcc/testsuite/ChangeLog | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ libcpp/ChangeLog | 9 ++++++++ libsanitizer/ChangeLog | 4 ++++ libstdc++-v3/ChangeLog | 13 +++++++++++ 9 files changed, 207 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0369c48d0c4..f9b93b29de9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,56 @@ +2021-10-06 Andrew MacLeod + + * gimple-range-cache.cc (non_null_ref::adjust_range): Call new + intersect routine. + * gimple-range-fold.cc (adjust_pointer_diff_expr): Ditto. + (adjust_imagpart_expr): Ditto. + * value-range.cc (irange::irange_intersect): Call new routine if + RHS is a single pair. + (irange::intersect): New wide_int version. + * value-range.h (class irange): New prototype. + +2021-10-06 Andrew MacLeod + + * gimple-range-edge.cc (gimple_outgoing_range::gimple_outgoing_range): + Add parameter to limit size when recognizing switches. + (gimple_outgoing_range::edge_range_p): Check size limit. + * gimple-range-edge.h (gimple_outgoing_range): Add size field. + * gimple-range-gori.cc (gori_map::calculate_gori): Ignore switches + that exceed the size limit. + (gori_compute::gori_compute): Add initializer. + * params.opt (evrp-switch-limit): New. + * doc/invoke.texi: Update docs. + +2021-10-06 Andrew MacLeod + + * value-range.h (irange::set_varying): Use TYPE_MIN_VALUE and + TYPE_MAX_VALUE instead of creating new trees when possible. + +2021-10-06 Andrew MacLeod + + * gimple-range-cache.cc (non_null_ref::adjust_range): Check for + zero and non-zero more efficently. + +2021-10-06 Richard Biener + + PR c/102605 + * dumpfile.h (TDF_GIMPLE_VAL): New. + (dump_flag): Re-order and adjust TDF_* flags. Make + the enum uint32_t. Use std::underlying_type in the + operator overloads. + (optgroup_flag): Likewise for the operator overloads. + * tree-pretty-print.c (dump_generic_node): Wrap ADDR_EXPR + in _Literal if TDF_GIMPLE_VAL. + * gimple-pretty-print.c (dump_gimple_assign): Add + TDF_GIMPLE_VAL to flags when dumping operands where only + is_gimple_val are allowed. + (dump_gimple_cond): Likewise. + +2021-10-06 prathamesh.kulkarni + + * gimple-isel.cc (gimple_expand_vec_cond_expr): Remove redundant if + condition. + 2021-10-05 qing zhao PR middle-end/102359 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 46eae114d58..e528addee6c 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20211006 +20211007 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index c0646694b2a..a6484f45f75 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,17 @@ +2021-10-06 Jakub Jelinek + + PR tree-optimization/102571 + * c-omp.c (c_finish_omp_atomic): Optimize the case where type has + padding, but the non-padding bits are contiguous set of bytes + by adjusting the memcmp call arguments instead of emitting + __builtin_clear_padding and then comparing all the type's bytes. + +2021-10-06 Jakub Jelinek + + PR c++/102612 + * c-cppbuiltin.c (c_cpp_builtins): For -std=c++23 predefine + __cpp_constexpr to 202110L rather than 201907L. + 2021-10-04 Marek Polacek PR c++/97573 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 663c0b174b4..97d0a3518f6 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,52 @@ +2021-10-06 Jakub Jelinek + + PR c++/102612 + * parser.c (cp_parser_jump_statement): Implement C++23 P2242R3. + Allow goto expressions in constexpr function bodies for C++23. + Adjust error message for older standards to mention it. + * decl.c (start_decl): Allow static and thread_local declarations + in constexpr function bodies for C++23. Adjust error message for + older standards to mention it. + * constexpr.c (ensure_literal_type_for_constexpr_object): Allow + declarations of variables with non-literal type in constexpr function + bodies for C++23. Adjust error message for older standards to mention + it. + (cxx_eval_constant_expression) : Diagnose declarations + of initialization of static or thread_local vars. + (cxx_eval_constant_expression) : Diagnose goto + statements for C++23. + (potential_constant_expression_1) : Swap the + CP_DECL_THREAD_LOCAL_P and TREE_STATIC checks. + (potential_constant_expression_1) : Allow labels for + C++23. Adjust error message for older standards to mention it. + +2021-10-06 Jakub Jelinek + Jason Merrill + + PR c++/98712 + PR c++/102490 + * cp-tree.h (maybe_synthesize_method): Declare. + * method.c (genericize_spaceship): Use + LOOKUP_NORMAL | LOOKUP_NONVIRTUAL | LOOKUP_DEFAULTED instead of + LOOKUP_NORMAL for flags. + (comp_info): Remove defining member. Add complain, code, retcat. + (comp_info::comp_info): Adjust. + (do_one_comp): Split out from build_comparison_op. Use + LOOKUP_NORMAL | LOOKUP_NONVIRTUAL | LOOKUP_DEFAULTED instead of + LOOKUP_NORMAL for flags. + (build_comparison_op): Add defining argument. Adjust comp_info + construction. Use defining instead of info.defining. Assert that + if defining, ctype is a complete type. Walk base binfos. + (synthesize_method, maybe_explain_implicit_delete, + explain_implicit_non_constexpr): Adjust build_comparison_op callers. + (maybe_synthesize_method): New function. + * class.c (check_bases_and_members): Don't call defaulted_late_check + for sfk_comparison. + (finish_struct_1): Call it here instead after class has been + completed. + * pt.c (maybe_instantiate_noexcept): Call maybe_synthesize_method + instead of synthesize_method. + 2021-10-05 Jakub Jelinek PR c++/102548 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index da5d1a23931..b2967974893 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2021-10-06 Tobias Burnus + + * resolve.c (resolve_values): Only show + deprecated warning if attr.referenced. + 2021-10-04 Tobias Burnus PR fortran/54753 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ec22122f0b8..a3159bdfcc0 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,62 @@ +2021-10-06 Jason Merrill + + * g++.dg/cpp2a/spaceship-synth8a.C: New test. + +2021-10-06 Jakub Jelinek + + PR c++/102612 + * g++.dg/cpp23/feat-cxx2b.C: Expect __cpp_constexpr 202110L rather + than 201907L. + * g++.dg/cpp23/constexpr-nonlit1.C: New test. + * g++.dg/cpp23/constexpr-nonlit2.C: New test. + * g++.dg/cpp23/constexpr-nonlit3.C: New test. + * g++.dg/cpp23/constexpr-nonlit4.C: New test. + * g++.dg/cpp23/constexpr-nonlit5.C: New test. + * g++.dg/cpp23/constexpr-nonlit6.C: New test. + * g++.dg/diagnostic/constexpr1.C: Only expect some diagnostics for + c++20_down. + * g++.dg/cpp1y/constexpr-label.C: Likewise. + * g++.dg/cpp1y/constexpr-neg1.C: Likewise. + * g++.dg/cpp2a/constexpr-try5.C: Likewise. Adjust some expected + wording. + * g++.dg/cpp2a/constexpr-dtor3.C: Likewise. + * g++.dg/cpp2a/consteval3.C: Likewise. Add effective target c++20 + and remove dg-options. + +2021-10-06 Jakub Jelinek + + * gcc.dg/cpp/gnu11-elifdef-1.c: New test. + * gcc.dg/cpp/gnu11-elifdef-2.c: New test. + * gcc.dg/cpp/gnu11-elifdef-3.c: New test. + * gcc.dg/cpp/gnu11-elifdef-4.c: New test. + * g++.dg/cpp/elifdef-1.C: New test. + * g++.dg/cpp/elifdef-2.C: New test. + * g++.dg/cpp/elifdef-3.C: New test. + * g++.dg/cpp/elifdef-4.C: New test. + * g++.dg/cpp/elifdef-5.C: New test. + * g++.dg/cpp/elifdef-6.C: New test. + * g++.dg/cpp/elifdef-7.C: New test. + +2021-10-06 Tobias Burnus + + * gfortran.dg/attr_deprecated-2.f90: New test. + +2021-10-06 Jakub Jelinek + Jason Merrill + + PR c++/98712 + PR c++/102490 + * g++.dg/cpp2a/spaceship-synth8.C (std::strong_ordering): Provide + more complete definition. + (std::strong_ordering::less, std::strong_ordering::equal, + std::strong_ordering::greater): Define. + * g++.dg/cpp2a/spaceship-synth12.C: New test. + * g++.dg/cpp2a/spaceship-synth13.C: New test. + * g++.dg/cpp2a/spaceship-synth14.C: New test. + * g++.dg/cpp2a/spaceship-eq11.C: New test. + * g++.dg/cpp2a/spaceship-eq12.C: New test. + * g++.dg/cpp2a/spaceship-eq13.C: New test. + 2021-10-05 qing zhao PR middle-end/102359 diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 35f952dbd95..3fca7fd7b03 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,12 @@ +2021-10-06 Jakub Jelinek + + * init.c (lang_defaults): Implement P2334R1, enable elifdef for + -std=c++23 and -std=gnu++23. + * directives.c (_cpp_handle_directive): Support elifdef/elifndef if + either CPP_OPTION (pfile, elifdef) or !CPP_OPTION (pfile, std). + (do_elif): For older non-std modes if pedantic pedwarn about + #elifdef/#elifndef directives that change behavior. + 2021-09-01 Jakub Jelinek PR c++/100977 diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog index 64d0194ac13..e7a15fa0596 100644 --- a/libsanitizer/ChangeLog +++ b/libsanitizer/ChangeLog @@ -1,3 +1,7 @@ +2021-10-06 H.J. Lu + + * LOCAL_PATCHES: Update to the corresponding revision. + 2021-10-01 H.J. Lu * LOCAL_PATCHES: Update to the corresponding revision. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 614361fcd7b..daafc57e663 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,16 @@ +2021-10-06 Jonathan Wakely + + * include/Makefile.am: Add new headers. + * include/Makefile.in: Regenerate. + * include/std/functional: Include . + * include/std/version (__cpp_lib_move_only_function): Define. + * include/bits/mofunc_impl.h: New file. + * include/bits/move_only_function.h: New file. + * testsuite/20_util/move_only_function/call.cc: New test. + * testsuite/20_util/move_only_function/cons.cc: New test. + * testsuite/20_util/move_only_function/move.cc: New test. + * testsuite/20_util/move_only_function/version.cc: New test. + 2021-10-05 Jonathan Wakely * testsuite/21_strings/basic_string_view/requirements/trivially_copyable.cc: