From patchwork Mon Jan 19 17:03:20 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Oates X-Patchwork-Id: 128516 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id C84A54BA9032 for ; Mon, 19 Jan 2026 17:04:19 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C84A54BA9032 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20230601 header.b=U/xP7A5W X-Original-To: newlib@sourceware.org Delivered-To: newlib@sourceware.org Received: from mail-qk1-x743.google.com (mail-qk1-x743.google.com [IPv6:2607:f8b0:4864:20::743]) by sourceware.org (Postfix) with ESMTPS id 334694BA2E06 for ; Mon, 19 Jan 2026 17:03:39 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 334694BA2E06 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=andrewoates.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 334694BA2E06 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::743 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1768842219; cv=none; b=WjmnEup00YBvcx/Qrv3bvB1ZzmVXxfzyEceHBYYNe88GS5kBQyvAuLNQbNHR/3CXADa0B9FXPLTtUiBMGVY5kVbJCQmVGrVvKe/huwLFJoenc6L85Ce26nUr1iEkAj1HGE5qVp5ubMWyFvLDeNj0bQAT9pV5GJ7hHGWVFyFLJiI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1768842219; c=relaxed/simple; bh=4ZyLPs6q/yYdX1BZbIbJCb6/RI55sXWH/ruDw321a9Q=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=x4LcsiSNMI54sJyCrZcOLR/QerGt6oCsGT+sK40e2N6ZybVrdxzOTLQlLdsk1Qs3NRuZ3MuXXgbQtL/Y4SQCN7Yc/Wzv3Cw60qZ1toUdpWvSSj5xTWjyop+y08Rzy3tY1vYHcv7IjzFJH9Vl/bnF2EBqbgk7Aif/nNT6mAC9JSM= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 334694BA2E06 Received: by mail-qk1-x743.google.com with SMTP id af79cd13be357-8c59bce68a1so285097385a.0 for ; Mon, 19 Jan 2026 09:03:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768842218; x=1769447018; darn=sourceware.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:sender:from:to:cc:subject:date:message-id:reply-to; bh=s1z+oMqLCdXQJNzgD1MJktDSJ4iAm7XIuV/YS+xjue4=; b=U/xP7A5WFiZ2EiDRg64V9wN6XizC0qJT3OVWB5OabCnADotfENiaw3oKMiFWXghQ96 rfYBt7S/tiDnMY1iKPSNuOrnii/Djz8olUdBEeia9TBBsY6BJF234ESg9nZKRoOuie2B QxJTpd0KxmEohp7Z2MgWXSiaFW3DeHkKP3QSzmcMUwHgw9IdjKmN9NSfl4ERxHnyv+kB 1bgEp/UvlrO7t1BxkqtLZDafPaVb2kbEyvBLkMR9g6e0Exn9IOmM/pi39EYp6cviWxWP CU1N+XcWYnMHc9CeaH7EOQqUKc8c2NQqfZshmw4kiug+fs8osbjRWrcx5+xaCpkgQDZy ae0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768842218; x=1769447018; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:sender:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=s1z+oMqLCdXQJNzgD1MJktDSJ4iAm7XIuV/YS+xjue4=; b=A2NngX6GEXXzoGuUDnLmFxcu205r0fkYfbg1HFcdfryscuQd7xLukebWegpTsVTmNG VulE2rqK7rRReu+HyIyQRMD0wUOhYf1ZK3HzvdQypHLPZAT7vt1/kniAcOddeRn1DlLb Pvmhp0hDhaM1/WaJaDiU2JVV0W9rSNhS0PkyLFD0pqrkGJPVJ67LC+E2TYw/6uh/4E3K Bh7uKFeYymp3KEJ5eOGPw3bUK9XQrsKeLa464R6IgaJwoZFo7EWD7m0O5LNdI8A92P4F mIDaUZhpbji8cmWnjwgJMo6NK0zygxpBXnqWzGUFMKKfp9QuXosF3ZINEvTjGTLMTArm uvXQ== X-Gm-Message-State: AOJu0YzHccTzPonD1DfcOSagUFARFKEYzYHsuEFYz5VkSH23IqqWYpOx BuP+xgzzNHotH0Z5ZZ/2UnJxROzkhhBwK2GOv/xxVBvWWkP7dTYzi014fW5WqKZU X-Gm-Gg: AY/fxX5CUoBzOBBhpeXnmo6GNPBWFYN+ug4OaD4wwmbIpoG87ljZlJaEJNPrAba24KL PGG8eSdVVCw+dYouXTBqYB/O3/8U0X64fZoyVvUkntJUiV8r9GMNVyeys5Hnzmmjl+BLxE75eyn 1/+QHptqlvVFkjzh3cSz9YKcnPJDAVyQAfWUq5FvxexCvpCrgGOKfcG9o44NYk3WgKc9zpGWTYV wt+12+8JwYOMxNelkYr+hwNwwkhXVxUNun8z0CmrCaVR2qJreULiDSw1WDLAeBb099fZjgmCGOq 9RJtkkHOoLAuXwTFe1gxU9cPFmJ46Wn+Dv6dWN4YKkTq9hYKFKBk9fMw2HJ2EgdkFVwxAyq4uDl 317oeDqLPrKKlqjHsAf4izW7I2qnvW9ZYQAkxCYpBeLSFOcrpiYTO8yS5M3Cket2KfAsjc/1Gv3 JaQgRcxDJjrQePDnLIOUvxRcWpLNjWdbLN2/vf+c2KUG4vxP558YPdd0PpOg== X-Received: by 2002:a05:620a:25cb:b0:8a3:cd9e:e40e with SMTP id af79cd13be357-8c6a67c657emr1648902885a.86.1768842213662; Mon, 19 Jan 2026 09:03:33 -0800 (PST) Received: from localhost.localdomain ([2601:189:8501:c220:4895:9d03:e50a:771e]) by smtp.gmail.com with ESMTPSA id af79cd13be357-8c6a71ad797sm842440085a.8.2026.01.19.09.03.32 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 19 Jan 2026 09:03:33 -0800 (PST) Sender: Andrew Oates From: andrew@andrewoates.com To: newlib@sourceware.org Cc: Andrew Oates Subject: [PATCH] newlib/libc/ctype: Bypass _jp2uc/_uc2jp if _MB_CAPABLE is not set Date: Mon, 19 Jan 2026 12:03:20 -0500 Message-ID: <20260119170323.83493-1-andrew@andrewoates.com> X-Mailer: git-send-email 2.52.0 MIME-Version: 1.0 X-Spam-Status: No, score=-10.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_EF, FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on sourceware.org X-BeenThere: newlib@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Newlib mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: newlib-bounces~patchwork=sourceware.org@sourceware.org From: Andrew Oates Currently, if an application uses towctrans or towctrans_l with a newlib compiled without _MB_CAPABLE, it will fail to link due to _jp2uc/_uc2jp being undefined. This extends the cygwin behavior to all non-_MB_CAPABLE builds. --- newlib/libc/ctype/local.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/newlib/libc/ctype/local.h b/newlib/libc/ctype/local.h index 5c293c83d..1acdfd277 100644 --- a/newlib/libc/ctype/local.h +++ b/newlib/libc/ctype/local.h @@ -32,7 +32,7 @@ * for towupper and towlower, the result must be back-transformed into the respective locale encoding; currently NOT IMPLEMENTED */ -#ifdef __CYGWIN__ +#if defined(__CYGWIN__) || !defined(_MB_CAPABLE) /* Under Cygwin, wchar_t (or its extension wint_t) is Unicode */ #define _jp2uc(c) (c) #define _jp2uc_l(c, l) (c)