From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2181) id 692353858D33; Tue, 6 Jun 2023 13:34:10 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 692353858D33 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1686058450; bh=QoEL4Nk3W2Lbp3P+Kh96DB1Qw0yvA4PkmFN3A9LtTSk=; h=From:To:Subject:Date:From; b=TibedN+g2drOH3OsnJAeLGlAHTJl3P0tY18gd4GT7qtd3sW38hiUNEEYMIIRA5VmJ wyD2qt7e6emb78DjTamsrFTP/mf+GPvK/MtIrLjesqxfhJaaDw5102FbAdQbtgQrwk BDPMdGLGPyhxsJ9KK1HyjIhamB1uSDsRWofBeqtY= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Jonathan Wakely To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r13-7417] libstdc++: Do not assume existence of char8_t codecvt facet X-Act-Checkin: gcc X-Git-Author: Joseph Faulls X-Git-Refname: refs/heads/releases/gcc-13 X-Git-Oldrev: 34c039cd8a26d3fb1ed26b9bbb7aa05a1917ddac X-Git-Newrev: ad12d81e5922d0c3087f1f2569618c31e8db208c Message-Id: <20230606133410.692353858D33@sourceware.org> Date: Tue, 6 Jun 2023 13:34:10 +0000 (GMT) List-Id: https://gcc.gnu.org/g:ad12d81e5922d0c3087f1f2569618c31e8db208c commit r13-7417-gad12d81e5922d0c3087f1f2569618c31e8db208c Author: Joseph Faulls Date: Fri Jun 2 15:44:48 2023 +0000 libstdc++: Do not assume existence of char8_t codecvt facet It is not required that codecvt facet be supported by the locale, nor is it added as part of the default locale. This can lead to dangerous behaviour when static_cast. libstdc++-v3/ChangeLog: * include/bits/locale_classes.tcc: Remove check for codecvt facet. (cherry picked from commit 3d9b3ddb5fc9087c17645d53e6bcb1881e1955a4) Diff: --- libstdc++-v3/include/bits/locale_classes.tcc | 3 --- 1 file changed, 3 deletions(-) diff --git a/libstdc++-v3/include/bits/locale_classes.tcc b/libstdc++-v3/include/bits/locale_classes.tcc index 94838cd7796..2351dd5bcfb 100644 --- a/libstdc++-v3/include/bits/locale_classes.tcc +++ b/libstdc++-v3/include/bits/locale_classes.tcc @@ -129,9 +129,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _GLIBCXX_STD_FACET(time_put); _GLIBCXX_STD_FACET(messages); #endif -#ifdef _GLIBCXX_USE_CHAR8_T - _GLIBCXX_STD_FACET(codecvt); -#endif #if __cplusplus >= 201103L _GLIBCXX_STD_FACET(codecvt); _GLIBCXX_STD_FACET(codecvt);