From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 676723858C2C; Fri, 29 Apr 2022 06:36:55 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 676723858C2C From: "cvs-commit at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/105426] [wrong-code][regression][coroutines] range-for temporaries are not persisted in coroutines Date: Fri, 29 Apr 2022 06:36:55 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 13.0 X-Bugzilla-Keywords: wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: cvs-commit at gcc dot gnu.org X-Bugzilla-Status: ASSIGNED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: iains at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 29 Apr 2022 06:36:55 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D105426 --- Comment #4 from CVS Commits --- The master branch has been updated by Iain D Sandoe : https://gcc.gnu.org/g:3d8d093e820b10a4b4b2af8949a368377c0888cb commit r13-28-g3d8d093e820b10a4b4b2af8949a368377c0888cb Author: Iain Sandoe Date: Thu Apr 28 20:06:29 2022 +0100 c++, coroutines: Partial reversion of r12-8308-g15a176a833f23e [PR10542= 6]. The changes to fix PR 105287 included a tightening of the constraints on which variables are promoted to frame copies. This has exposed that we are failing to name some variables that should be promoted. We avoid the use of DECL_UID to build anonymous symbols since that might not be stable for -fcompare-debug. The long-term fix is to address the cases where the naming has been mis= sed, but for the short-term (and for the GCC-12 branch) backing out the additional constraint is proposed. Signed-off-by: Iain Sandoe PR c++/105426 gcc/cp/ChangeLog: * coroutines.cc (register_local_var_uses): Allow promotion of unnamed temporaries to coroutine frame copies.=