https://gcc.gnu.org/g:a9de71c2060339fcd56257e64e61af207b924e4c

commit r14-11790-ga9de71c2060339fcd56257e64e61af207b924e4c
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Fri May 16 00:23:13 2025 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 30 ++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |  2 +-
 gcc/c-family/ChangeLog  | 28 ++++++++++++++++++++++++++++
 gcc/c/ChangeLog         | 11 +++++++++++
 gcc/cp/ChangeLog        | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog | 35 +++++++++++++++++++++++++++++++++++
 6 files changed, 151 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bba6a5e4cdc5..6521a64fb435 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,33 @@
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-10  Jakub Jelinek  <ja...@redhat.com>
+
+       PR target/118623
+       * config/i386/i386.md (*bt<mode>): Represent bt as
+       compare:CCC of const0_rtx and zero_extract rather than
+       zero_extract and const0_rtx.
+       (*bt<SWI48:mode>_mask): Likewise.
+       (*jcc_bt<mode>): Likewise.  Use LTU and GEU as flags test
+       instead of EQ and NE.
+       (*jcc_bt<mode>_mask): Likewise.
+       (*jcc_bt<SWI48:mode>_mask_1): Likewise.
+       (Help combine recognize bt followed by cmov splitter): Likewise.
+       (*bt<mode>_setcqi): Likewise.
+       (*bt<mode>_setncqi): Likewise.
+       (*bt<mode>_setnc<mode>): Likewise.
+       (*bt<mode>_setncqi_2): Likewise.
+       (*bt<mode>_setc<mode>_mask): Likewise.
+
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-13  Jakub Jelinek  <ja...@redhat.com>
+
+       PR c++/118822
+       * tree-iterator.h (tsi_split_stmt_list): Declare.
+       * tree-iterator.cc (tsi_split_stmt_list): New function.
+
 2025-05-14  Kyle Huey  <m...@kylehuey.com>
 
        Backported from master:
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 63e8d5b6f5bd..e01bdfb865b5 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20250515
+20250516
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 2aef67ccfb84..3d65f9785b1b 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,31 @@
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-13  Jakub Jelinek  <ja...@redhat.com>
+
+       PR c++/118822
+       * c-common.h (WHILE_COND_CLEANUP): Change description in comment.
+       (FOR_COND_CLEANUP): Likewise.
+       * c-gimplify.cc (genericize_c_loop): Adjust for COND_CLEANUP
+       being CLEANUP_STMT/TRY_FINALLY_EXPR trailing nesting depth
+       instead of actual cleanup.
+
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-07  Jakub Jelinek  <ja...@redhat.com>
+                   Jason Merrill  <ja...@redhat.com>
+
+       PR c++/86769
+       * c-common.def (FOR_STMT): Add 2 operands and document them.
+       (WHILE_STMT): Likewise.
+       * c-common.h (WHILE_COND_PREP, WHILE_COND_CLEANUP): Define.
+       (FOR_COND_PREP, FOR_COND_CLEANUP): Define.
+       * c-gimplify.cc (genericize_c_loop): Add COND_PREP and COND_CLEANUP
+       arguments, handle them if they are non-NULL.
+       (genericize_for_stmt, genericize_while_stmt, genericize_do_stmt):
+       Adjust callers.
+
 2025-03-22  Martin Uecker  <uec...@tugraz.at>
 
        Backported from master:
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 2e9537a90de4..c1c434ca9d13 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,14 @@
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-07  Jakub Jelinek  <ja...@redhat.com>
+                   Jason Merrill  <ja...@redhat.com>
+
+       PR c++/86769
+       * c-parser.cc (c_parser_while_statement): Add 2 further NULL_TREE
+       operands to build_stmt.
+       (c_parser_for_statement): Likewise.
+
 2025-05-14  Joseph Myers  <josmy...@redhat.com>
 
        Backported from master:
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index fab3f272402e..a869030f6621 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,49 @@
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-13  Jakub Jelinek  <ja...@redhat.com>
+
+       PR c++/118822
+       * semantics.cc (adjust_loop_decl_cond): Allow multiple trailing
+       CLEANUP_STMT levels in *BODY_P.  Set *CLEANUP_P to the number
+       of levels rather than one particular cleanup, keep the cleanups
+       in *PREP_P.  Set *BODY_P to the last stmt in the cur_stmt_list
+       or NULL if *CLEANUP_P and the innermost cur_stmt_list is empty.
+       (finish_loop_cond_prep): New function.
+       (finish_while_stmt, finish_for_stmt): Use it.  Don't call
+       set_one_cleanup_loc.
+       * constexpr.cc (cxx_eval_loop_expr): Adjust handling of
+       {FOR,WHILE}_COND_{PREP,CLEANUP}.
+
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-07  Jakub Jelinek  <ja...@redhat.com>
+                   Jason Merrill  <ja...@redhat.com>
+
+       PR c++/86769
+       * semantics.cc (set_one_cleanup_loc): New function.
+       (set_cleanup_locs): Use it.
+       (simplify_loop_decl_cond): Remove.
+       (adjust_loop_decl_cond): New function.
+       (begin_while_stmt): Add 2 further NULL_TREE operands to build_stmt.
+       (finish_while_stmt_cond): Call adjust_loop_decl_cond instead of
+       simplify_loop_decl_cond.
+       (finish_while_stmt): Call do_poplevel also on WHILE_COND_PREP if
+       non-NULL and also use pop_stmt_list rather than do_poplevel for
+       WHILE_BODY in that case.  Call set_one_cleanup_loc.
+       (begin_for_stmt): Add 2 further NULL_TREE operands to build_stmt.
+       (finish_for_cond): Call adjust_loop_decl_cond instead of
+       simplify_loop_decl_cond.
+       (finish_for_stmt): Call do_poplevel also on FOR_COND_PREP if non-NULL
+       and also use pop_stmt_list rather than do_poplevel for FOR_BODY in
+       that case.  Call set_one_cleanup_loc.
+       * constexpr.cc (cxx_eval_loop_expr): Handle
+       {WHILE,FOR}_COND_{PREP,CLEANUP}.
+       (check_for_return_continue): Handle {WHILE,FOR}_COND_PREP.
+       (potential_constant_expression_1): RECUR on
+       {WHILE,FOR}_COND_{PREP,CLEANUP}.
+
 2025-05-14  Iain Sandoe  <i...@sandoe.co.uk>
 
        PR c++/113773
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index aae27986e9d8..2955ef40fead 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,38 @@
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-10  Jakub Jelinek  <ja...@redhat.com>
+
+       PR target/118623
+       * gcc.c-torture/execute/pr118623.c: New test.
+
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-13  Jakub Jelinek  <ja...@redhat.com>
+
+       PR c++/118822
+       * g++.dg/expr/for9.C: New test.
+
+2025-05-15  Jakub Jelinek  <ja...@redhat.com>
+
+       Backported from master:
+       2025-02-07  Jakub Jelinek  <ja...@redhat.com>
+                   Jason Merrill  <ja...@redhat.com>
+
+       PR c++/86769
+       * g++.dg/diagnostic/redeclaration-7.C: New test.
+       * g++.dg/expr/for3.C: New test.
+       * g++.dg/expr/for4.C: New test.
+       * g++.dg/expr/for5.C: New test.
+       * g++.dg/expr/for6.C: New test.
+       * g++.dg/expr/for7.C: New test.
+       * g++.dg/expr/for8.C: New test.
+       * g++.dg/ext/stmtexpr27.C: New test.
+       * g++.dg/cpp2a/constexpr-86769.C: New test.
+       * g++.dg/cpp26/name-independent-decl7.C: New test.
+       * g++.dg/cpp26/name-independent-decl8.C: New test.
+
 2025-05-14  Iain Sandoe  <i...@sandoe.co.uk>
 
        PR c++/113773

Reply via email to