From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) by sourceware.org (Postfix) with ESMTPS id 938073858C55 for ; Thu, 14 Jul 2022 13:37:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 938073858C55 Received: by mail-ed1-x52b.google.com with SMTP id y8so2458574eda.3 for ; Thu, 14 Jul 2022 06:37:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=GfllmPkA8hf8vYlQ81s9PoOB4cJYY5AHmjX75808IHA=; b=ylLkatHXSg0d1osNXsDVWyO8ytrFR+06Z74P+FinlmVKIXIU4TYj64Fo7BvbwBqD/A LqVa/VEM7lkBH71SApUuSynqIAyhrvXiK8qWrGqoLQFPaFS//kdp1rupG9qVW7Dtw6Wl UeVClsgbZwDGYhjstz0w4leAVbaskrqcsz1F2EbXAE8u+g9jppG31dDMg2SOt/NjlkDG Ui/9uy4PiZcVPaxLquy2uQTMEpa5Vc505NsEodGD/TtOnUq55GXdboZbF9iLrOKoA23c Py8uqfWpDDStojdUyuEjxcImy5pDU2NP0aD7jj+2Albme+PLhb2sS/CKwpoqWT525Gns LSQQ== X-Gm-Message-State: AJIora8FwiuW00RWMbZLI74Vm5zyOLUEeQ6apCt18yTYOr/tbdbxQjcY Ve9Y/gPwCDOzA8idst4nxDidyxDglo5GZ7avmKbXpcLsD6g= X-Google-Smtp-Source: AGRyM1sCf8K1IGAqSrPe2FuJk5M+xbimo2UdK0WadbmpdhpM9SYqMOtiMkil6X68cJT0A7TLP6bjgdGinaJB8bekaJk= X-Received: by 2002:a05:6402:2287:b0:43b:a9d:ab1 with SMTP id cw7-20020a056402228700b0043b0a9d0ab1mr12195972edb.325.1657805871048; Thu, 14 Jul 2022 06:37:51 -0700 (PDT) MIME-Version: 1.0 From: Marco Falke Date: Thu, 14 Jul 2022 15:37:39 +0200 Message-ID: Subject: [PATCH] libstdc++: Make __from_chars_alnum_to_val conversion explicit To: gcc-patches@gcc.gnu.org Content-Type: multipart/mixed; boundary="0000000000000cfd2105e3c4020f" X-Spam-Status: No, score=-10.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, KAM_LOTSOFHASH, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Jul 2022 13:37:54 -0000 --0000000000000cfd2105e3c4020f Content-Type: text/plain; charset="UTF-8" >From 2d4e7cd1d476a065d824e11045c8dbc049d5f0a0 Mon Sep 17 00:00:00 2001 From: MacroFake Date: Thu, 14 Jul 2022 15:26:12 +0200 Subject: [PATCH] libstdc++: Make __from_chars_alnum_to_val conversion explicit The optimizations from commit a54137c88061c7495728fc6b8dfd0474e812b2cb introduced a clang integer sanitizer error. Fix this with an explicit static_cast, similar to the fix in commit 074436cf8cdd2a9ce75cadd36deb8301f00e55b9. libstdc++-v3/ChangeLog: * include/std/charconv (__from_chars_alnum_to_val): Replace implicit conversions from int to unsigned char with explicit casts. --- libstdc++-v3/include/std/charconv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libstdc++-v3/include/std/charconv b/libstdc++-v3/include/std/charconv index 218813e4797..bdf23e4a5ad 100644 --- a/libstdc++-v3/include/std/charconv +++ b/libstdc++-v3/include/std/charconv @@ -436,7 +436,7 @@ namespace __detail __from_chars_alnum_to_val(unsigned char __c) { if _GLIBCXX17_CONSTEXPR (_DecOnly) - return __c - '0'; + return static_cast(__c - '0'); else { // This initializer is deliberately made dependent in order to work -- 2.35.3 --0000000000000cfd2105e3c4020f Content-Type: text/x-patch; charset="US-ASCII"; name="0001-libstdc-Make-__from_chars_alnum_to_val-conversion-ex.patch" Content-Disposition: attachment; filename="0001-libstdc-Make-__from_chars_alnum_to_val-conversion-ex.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_l5l2sazx0 RnJvbSAyZDRlN2NkMWQ0NzZhMDY1ZDgyNGUxMTA0NWM4ZGJjMDQ5ZDVmMGEwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYWNyb0Zha2UgPGZhbGtlLm1hcmNvQGdtYWlsLmNvbT4KRGF0 ZTogVGh1LCAxNCBKdWwgMjAyMiAxNToyNjoxMiArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIGxpYnN0 ZGMrKzogTWFrZSBfX2Zyb21fY2hhcnNfYWxudW1fdG9fdmFsIGNvbnZlcnNpb24gZXhwbGljaXQK ClRoZSBvcHRpbWl6YXRpb25zIGZyb20gY29tbWl0IGE1NDEzN2M4ODA2MWM3NDk1NzI4ZmM2Yjhk ZmQwNDc0ZTgxMmIyY2IKaW50cm9kdWNlZCBhIGNsYW5nIGludGVnZXIgc2FuaXRpemVyIGVycm9y LgoKRml4IHRoaXMgd2l0aCBhbiBleHBsaWNpdCBzdGF0aWNfY2FzdCwgc2ltaWxhciB0byB0aGUg Zml4IGluIGNvbW1pdAowNzQ0MzZjZjhjZGQyYTljZTc1Y2FkZDM2ZGViODMwMWYwMGU1NWI5LgoK bGlic3RkYysrLXYzL0NoYW5nZUxvZzoKCiAgICAgICAgKiBpbmNsdWRlL3N0ZC9jaGFyY29udiAo X19mcm9tX2NoYXJzX2FsbnVtX3RvX3ZhbCk6IFJlcGxhY2UKICAgICAgICAgIGltcGxpY2l0IGNv bnZlcnNpb25zIGZyb20gaW50IHRvIHVuc2lnbmVkIGNoYXIgd2l0aCBleHBsaWNpdAogICAgICAg ICAgY2FzdHMuCi0tLQogbGlic3RkYysrLXYzL2luY2x1ZGUvc3RkL2NoYXJjb252IHwgMiArLQog MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvbGlic3RkYysrLXYzL2luY2x1ZGUvc3RkL2NoYXJjb252IGIvbGlic3RkYysrLXYzL2luY2x1 ZGUvc3RkL2NoYXJjb252CmluZGV4IDIxODgxM2U0Nzk3Li5iZGYyM2U0YTVhZCAxMDA2NDQKLS0t IGEvbGlic3RkYysrLXYzL2luY2x1ZGUvc3RkL2NoYXJjb252CisrKyBiL2xpYnN0ZGMrKy12My9p bmNsdWRlL3N0ZC9jaGFyY29udgpAQCAtNDM2LDcgKzQzNiw3IEBAIG5hbWVzcGFjZSBfX2RldGFp bAogICAgIF9fZnJvbV9jaGFyc19hbG51bV90b192YWwodW5zaWduZWQgY2hhciBfX2MpCiAgICAg ewogICAgICAgaWYgX0dMSUJDWFgxN19DT05TVEVYUFIgKF9EZWNPbmx5KQotCXJldHVybiBfX2Mg LSAnMCc7CisgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+KF9fYyAtICcw Jyk7CiAgICAgICBlbHNlCiAJewogCSAgLy8gVGhpcyBpbml0aWFsaXplciBpcyBkZWxpYmVyYXRl bHkgbWFkZSBkZXBlbmRlbnQgaW4gb3JkZXIgdG8gd29yawotLSAKMi4zNS4zCgo= --0000000000000cfd2105e3c4020f--