diff options
-rw-r--r-- | gcc/ChangeLog | 53 | ||||
-rw-r--r-- | gcc/DATESTAMP | 2 | ||||
-rw-r--r-- | gcc/c-family/ChangeLog | 14 | ||||
-rw-r--r-- | gcc/cp/ChangeLog | 49 | ||||
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 59 | ||||
-rw-r--r-- | libcpp/ChangeLog | 9 | ||||
-rw-r--r-- | libsanitizer/ChangeLog | 4 | ||||
-rw-r--r-- | libstdc++-v3/ChangeLog | 13 |
9 files changed, 207 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0369c48..f9b93b2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,56 @@ +2021-10-06 Andrew MacLeod <amacleod@redhat.com> + + * 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 <amacleod@redhat.com> + + * 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 <amacleod@redhat.com> + + * 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 <amacleod@redhat.com> + + * gimple-range-cache.cc (non_null_ref::adjust_range): Check for + zero and non-zero more efficently. + +2021-10-06 Richard Biener <rguenther@suse.de> + + 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 <prathamesh.kulkarni@linaro.org> + + * gimple-isel.cc (gimple_expand_vec_cond_expr): Remove redundant if + condition. + 2021-10-05 qing zhao <qing.zhao@oracle.com> PR middle-end/102359 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 46eae11..e528add 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20211006 +20211007 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index c064669..a6484f4 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,17 @@ +2021-10-06 Jakub Jelinek <jakub@redhat.com> + + 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 <jakub@redhat.com> + + 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 <polacek@redhat.com> PR c++/97573 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 663c0b1..97d0a35 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,52 @@ +2021-10-06 Jakub Jelinek <jakub@redhat.com> + + 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) <case DECL_EXPR>: Diagnose declarations + of initialization of static or thread_local vars. + (cxx_eval_constant_expression) <case GOTO_EXPR>: Diagnose goto + statements for C++23. + (potential_constant_expression_1) <case DECL_EXPR>: Swap the + CP_DECL_THREAD_LOCAL_P and TREE_STATIC checks. + (potential_constant_expression_1) <case LABEL_EXPR>: Allow labels for + C++23. Adjust error message for older standards to mention it. + +2021-10-06 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + 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 <jakub@redhat.com> PR c++/102548 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index da5d1a2..b296797 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2021-10-06 Tobias Burnus <tobias@codesourcery.com> + + * resolve.c (resolve_values): Only show + deprecated warning if attr.referenced. + 2021-10-04 Tobias Burnus <tobias@codesourcery.com> PR fortran/54753 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ec22122..a3159bd 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,62 @@ +2021-10-06 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp2a/spaceship-synth8a.C: New test. + +2021-10-06 Jakub Jelinek <jakub@redhat.com> + + 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 <jakub@redhat.com> + + * 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 <tobias@codesourcery.com> + + * gfortran.dg/attr_deprecated-2.f90: New test. + +2021-10-06 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + 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 <qing.zhao@oracle.com> PR middle-end/102359 diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 35f952d..3fca7fd 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,12 @@ +2021-10-06 Jakub Jelinek <jakub@redhat.com> + + * 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 <jakub@redhat.com> PR c++/100977 diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog index 64d0194..e7a15fa 100644 --- a/libsanitizer/ChangeLog +++ b/libsanitizer/ChangeLog @@ -1,3 +1,7 @@ +2021-10-06 H.J. Lu <hjl.tools@gmail.com> + + * LOCAL_PATCHES: Update to the corresponding revision. + 2021-10-01 H.J. Lu <hjl.tools@gmail.com> * LOCAL_PATCHES: Update to the corresponding revision. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 614361f..daafc57 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,16 @@ +2021-10-06 Jonathan Wakely <jwakely@redhat.com> + + * include/Makefile.am: Add new headers. + * include/Makefile.in: Regenerate. + * include/std/functional: Include <bits/move_only_function.h>. + * 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 <jwakely@redhat.com> * testsuite/21_strings/basic_string_view/requirements/trivially_copyable.cc: |