From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id B36CD385840B; Fri, 19 Jan 2024 19:13:34 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B36CD385840B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1705691614; bh=En9crQaQUx5Z1B/rb7grR/ln6MHONTqbM8JzGkv8H7M=; h=From:To:Subject:Date:In-Reply-To:References:From; b=dR4z9pyd6f3YdPoXS1mulISN+K+VkqR0/ZR0wFStjaFz68DoNmxgOXWtb3VFUyjgn zFNKd28sBp+hIbXg+pxHjop/lcHGHdCm0/mV9/zklKhkqrYFEbFXTpZ+H6Qnngdl0n HAlVg9r0AykT3N6h3sxJp46rY4S6fFpzxVpoTRGg= From: "cvs-commit at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/108822] [C++23] Implement P2255R2, type trait to detect reference binding to temporary Date: Fri, 19 Jan 2024 19:13:33 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libstdc++ X-Bugzilla-Version: 13.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: cvs-commit at gcc dot gnu.org X-Bugzilla-Status: RESOLVED X-Bugzilla-Resolution: FIXED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: redi at gcc dot gnu.org X-Bugzilla-Target-Milestone: 14.0 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 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D108822 --- Comment #7 from GCC Commits --- The master branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:502a3c03e40e8920afb734c077b045f6c5efd087 commit r14-8292-g502a3c03e40e8920afb734c077b045f6c5efd087 Author: Jonathan Wakely Date: Fri Jan 19 12:28:30 2024 +0000 libstdc++: Fix P2255R2 dangling checks for std::tuple in C++17 [PR10882= 2] I accidentally used && in a fold-expression instead of || which meant that in C++17 the tuple(UElements&&...) constructor only failed its debug assertion if all tuple elements were dangling references. Some missing tests (noted as "TODO") meant this wasn't tested. This fixes the fold expression and adds the missing tests. libstdc++-v3/ChangeLog: PR libstdc++/108822 * include/std/tuple (__glibcxx_no_dangling_refs) [C++17]: Fix wrong fold-operator. * testsuite/20_util/tuple/dangling_ref.cc: Check tuples with one element and three elements. Check allocator-extended constructors.=