Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.2/patches/2233044/?format=api
{ "id": 2233044, "url": "http://patchwork.ozlabs.org/api/1.2/patches/2233044/?format=api", "web_url": "http://patchwork.ozlabs.org/project/glibc/patch/20260505151142.1453614-2-avinal.xlvii@gmail.com/", "project": { "id": 41, "url": "http://patchwork.ozlabs.org/api/1.2/projects/41/?format=api", "name": "GNU C Library", "link_name": "glibc", "list_id": "libc-alpha.sourceware.org", "list_email": "libc-alpha@sourceware.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260505151142.1453614-2-avinal.xlvii@gmail.com>", "list_archive_url": null, "date": "2026-05-05T15:11:40", "name": "[1/3] intl: Remove IN_LIBGLOCALE dead code", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "08b247abfc44e483d7e3e4edda5e70935687321e", "submitter": { "id": 88549, "url": "http://patchwork.ozlabs.org/api/1.2/people/88549/?format=api", "name": "Avinal Kumar", "email": "avinal.xlvii@gmail.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/glibc/patch/20260505151142.1453614-2-avinal.xlvii@gmail.com/mbox/", "series": [ { "id": 502854, "url": "http://patchwork.ozlabs.org/api/1.2/series/502854/?format=api", "web_url": "http://patchwork.ozlabs.org/project/glibc/list/?series=502854", "date": "2026-05-05T15:11:39", "name": "intl: Remove dead code, sync with GNU gettext", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/502854/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2233044/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2233044/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "libc-alpha@sourceware.org" ], "Delivered-To": [ "patchwork-incoming@legolas.ozlabs.org", "libc-alpha@sourceware.org" ], "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=MaVse6rj;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=sourceware.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org;\n receiver=patchwork.ozlabs.org)", "sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=MaVse6rj", "sourceware.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com", "sourceware.org; spf=pass smtp.mailfrom=gmail.com", "server2.sourceware.org;\n arc=none smtp.remote-ip=2607:f8b0:4864:20::62b" ], "Received": [ "from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g929Q38vrz1yJ0\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 06 May 2026 01:14:18 +1000 (AEST)", "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 96F1A4B9DB65\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 5 May 2026 15:14:16 +0000 (GMT)", "from mail-pl1-x62b.google.com (mail-pl1-x62b.google.com\n [IPv6:2607:f8b0:4864:20::62b])\n by sourceware.org (Postfix) with ESMTPS id 1D7064BA23D9\n for <libc-alpha@sourceware.org>; Tue, 5 May 2026 15:12:10 +0000 (GMT)", "by mail-pl1-x62b.google.com with SMTP id\n d9443c01a7336-2b4583f0a1aso33014785ad.3\n for <libc-alpha@sourceware.org>; Tue, 05 May 2026 08:12:10 -0700 (PDT)", "from fedoraemon.neon-universe.ts.net\n ([2406:7400:11d:a9dc:9a14:72eb:1a60:868a])\n by smtp.gmail.com with ESMTPSA id\n d9443c01a7336-2b9cae4a127sm193695355ad.67.2026.05.05.08.12.06\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 05 May 2026 08:12:07 -0700 (PDT)" ], "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 sourceware.org 96F1A4B9DB65", "OpenDKIM Filter v2.11.0 sourceware.org 1D7064BA23D9" ], "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 1D7064BA23D9", "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 1D7064BA23D9", "ARC-Seal": "i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777993930; cv=none;\n b=uBkF5RVRvfsnuM3S7dV1meGSOAQx0WJKCGOPmvtI1KpmW5xLx6HGXjFCFEox5K85YAMHXmPh8KJWPcilO4YizoU5TRiVyWCPUw9Fz1OWyLZ55XDN/hKeT/WuVm1+2Wnx1JJc8//zyXBqKtgOZrlVf6FgvSDVjj51mZqQuwe+5SA=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777993930; c=relaxed/simple;\n bh=bjZ7SXPsWvk7XyeFKQTJcgcxz3yjOV+Kn1v/kfe8NVg=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=F7zPhtBBTWYCjHP+D4beaoi693tEZk9Ql9omDLJ69DCrQUx351N3m2dgpd5arLeoPUtz8TxXClNz4H5/D9d2OCEkTxhYFU55F9aAq3dHQOk74nMaznFfBg4iX1ItG3QMTsOkZiJBEIkjo/e6GOE9M5bGYbL4a3XsRwMZGkrHkQ0=", "ARC-Authentication-Results": "i=1; server2.sourceware.org", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1777993929; x=1778598729; darn=sourceware.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=m65Z/Q2PweBUSnPv5L0apNAzgNLHxvk82aCRjKCDcis=;\n b=MaVse6rjDtwJu6OiuWY1SG/b5A6PcuVhZDNxQVfUiRDykMUaOONQEify6kTSVsma7r\n 8KsgJYwHnnb5A5rX8LUZmHoUKNb7RC+RHuDFpu6HcYEagmG3DXyRFOf3aNxno11OJugp\n cr1xyFxp+IugRth0Ftfu1V3ujSN2InUlnAvcPO8JHGX7YxqjYzD5p/QJYBeenncqOyFI\n 2QloFuBG3gtlFsYTHI3FnU6Sm87au2DERjy3D55j2i/l7/+bL0wZ/CJtpFlgjzzokZym\n gALpOX8WX73tjXgOgPmMbMMJK0jkqGwZ8/gcbwaFTF9SSN1Ph0N/ZfsqP/ksja/BIrL2\n 1icw==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777993929; x=1778598729;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=m65Z/Q2PweBUSnPv5L0apNAzgNLHxvk82aCRjKCDcis=;\n b=cDX2ELowbB3jvIHEvK+GHadbRjMwS3a6g8+lGwhYZYwqUsBfrcs2PhG4e9lHbs6Gn7\n h+Px1jj7RMbrjomdpvjlK+5gqdSIm49VdtPmTumsISo7fQlLNu9Ulxp8XutFjYo10msQ\n QNSZz7K2+hl6S3Qj1hnHJLZRsQ00tTfpFXz52m1A3RU/q63KPo3NL7yxRaSCAPZuV+wi\n xPIfIjlyh95WLfdgW8ElqR/rw3OCd7F4EXZy5MkByZE/ooFg50qjFzPMUDcRcSCq3Ng5\n gL04XGnx4vAwb5ElWsxl8vYLXAfL5tAxxl+bof6wSTCGWEDzElAsgESmfTXhKBMS1b/D\n cvXQ==", "X-Gm-Message-State": "AOJu0YwJu1OwmqOEwV62MIy2lfc/r99nKM+E6iRKS4EWAMiAQWFNBLtl\n FeP3R0qGOqqHiBtcGSiLcgXYL+aBf0DeR8tQKvHWksUkQVCFURGSsS0/Y38yGA==", "X-Gm-Gg": "AeBDieuuCy6WugR+HfyQc4NjkKAjE0KZd2qdAsOqUXhe/n4pj49o1cOujXQcpvlBiSV\n WuHuM1jWJXD4bk5i+9J2ghjfizV+VmmJePkh3eEnbBr8i0vVvln0jZaI4o1RMVfGPSAlW2n5Zfh\n KW4z0YLrHFVaskST7BVkGhRHSziT1xA7P2lin5YG9wqOEHkSTWZQ3PYejQKUGpUWLi4Fo0y0u0Z\n NiGxoiOZt2b7hfuDf0DWLug5+JcrRBvGKTtJSl1rfHhdbsLieOYJT2+HU+LorzAXbff0YJke6JL\n o6iuDzrp2ZjLY/UwBx5XApIhGkd+eJ7Luqq6T/x2nW1Tq7F387xYWEpsJPUk34ucmkPNpQKt+Hx\n oOUD1uTw4BrFY/YNkrCKfDROb/Tmj3iiMNe8POZZWLcBWQAIa4qTMad1vRSploWdHQrOaQzM1nd\n pHsNYVq+VtL98b5WU7RXhOCfWCd3S5zXod4gAneb02ddLH4Ou4k1J6IrlyXt5LOR9td4Bwwl9dk\n SkM", "X-Received": "by 2002:a17:903:1984:b0:2b4:689a:e411 with SMTP id\n d9443c01a7336-2b9f2808d2fmr130748915ad.22.1777993928326;\n Tue, 05 May 2026 08:12:08 -0700 (PDT)", "From": "Avinal Kumar <avinal.xlvii@gmail.com>", "To": "libc-alpha@sourceware.org", "Cc": "Avinal Kumar <avinal.xlvii@gmail.com>", "Subject": "[PATCH 1/3] intl: Remove IN_LIBGLOCALE dead code", "Date": "Tue, 5 May 2026 20:41:40 +0530", "Message-ID": "<20260505151142.1453614-2-avinal.xlvii@gmail.com>", "X-Mailer": "git-send-email 2.54.0", "In-Reply-To": "<20260505151142.1453614-1-avinal.xlvii@gmail.com>", "References": "<20260505151142.1453614-1-avinal.xlvii@gmail.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-BeenThere": "libc-alpha@sourceware.org", "X-Mailman-Version": "2.1.30", "Precedence": "list", "List-Id": "Libc-alpha mailing list <libc-alpha.sourceware.org>", "List-Unsubscribe": "<https://sourceware.org/mailman/options/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=unsubscribe>", "List-Archive": "<https://sourceware.org/pipermail/libc-alpha/>", "List-Post": "<mailto:libc-alpha@sourceware.org>", "List-Help": "<mailto:libc-alpha-request@sourceware.org?subject=help>", "List-Subscribe": "<https://sourceware.org/mailman/listinfo/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=subscribe>", "Errors-To": "libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org" }, "content": "Remove all IN_LIBGLOCALE conditional blocks from intl/. libglocale\nwas a proposed API from 2005 that was never completed or shipped.\nThe macro is never defined in glibc or in current GNU gettext, making\nevery #ifdef IN_LIBGLOCALE block dead code.\n\nGNU gettext removed these in commits starting from 2023. Removing\nthem from glibc reduces noise and eases future syncs with gettext.\n\nImported from GNU gettext commit d6a6801c1.\nOriginal author: Bruno Haible <bruno@clisp.org>\n\nSigned-off-by: Avinal Kumar <avinal.xlvii@gmail.com>\n---\n intl/dcigettext.c | 116 +++++----------------------------------------\n intl/gettextP.h | 21 --------\n intl/loadmsgcat.c | 5 --\n intl/localealias.c | 9 +---\n intl/plural-exp.h | 2 +-\n 5 files changed, 15 insertions(+), 138 deletions(-)", "diff": "diff --git a/intl/dcigettext.c b/intl/dcigettext.c\nindex 9ebc54eeec..17bb8af444 100644\n--- a/intl/dcigettext.c\n+++ b/intl/dcigettext.c\n@@ -95,9 +95,6 @@ extern int errno;\n #ifdef _LIBC\n # include <libintl.h>\n #else\n-# ifdef IN_LIBGLOCALE\n-# include <libintl.h>\n-# endif\n # include \"libgnuintl.h\"\n #endif\n #include \"hash-string.h\"\n@@ -228,7 +225,7 @@ static void *mempcpy (void *dest, const void *src, size_t n);\n #endif\n \n /* Whether to support different locales in different threads. */\n-#if defined _LIBC || HAVE_USELOCALE || defined IN_LIBGLOCALE\n+#if defined _LIBC || HAVE_USELOCALE\n # define HAVE_PER_THREAD_LOCALE\n #endif\n \n@@ -247,11 +244,6 @@ struct known_translation_t\n const char *localename;\n #endif\n \n-#ifdef IN_LIBGLOCALE\n- /* The character encoding. */\n- const char *encoding;\n-#endif\n-\n /* State of the catalog counter at the point the string was found. */\n int counter;\n \n@@ -299,10 +291,6 @@ transcmp (const void *p1, const void *p2)\n \t if (result == 0)\n #endif\n \t {\n-#ifdef IN_LIBGLOCALE\n-\t result = strcmp (s1->encoding, s2->encoding);\n-\t if (result == 0)\n-#endif\n \t\t/* We compare the category last (though this is the cheapest\n \t\t operation) since it is hopefully always the same (namely\n \t\t LC_MESSAGES). */\n@@ -318,11 +306,9 @@ transcmp (const void *p1, const void *p2)\n textdomain(3). The default value for this is \"messages\". */\n const char _nl_default_default_domain[] attribute_hidden = \"messages\";\n \n-#ifndef IN_LIBGLOCALE\n /* Value used as the default domain for gettext(3). */\n const char *_nl_current_default_domain attribute_hidden\n = _nl_default_default_domain;\n-#endif\n \n /* Contains the default location of the message catalogs. */\n #if defined __EMX__\n@@ -338,25 +324,17 @@ libc_hidden_data_def (_nl_default_dirname)\n # endif\n #endif\n \n-#ifndef IN_LIBGLOCALE\n /* List with bindings of specific domains created by bindtextdomain()\n calls. */\n struct binding *_nl_domain_bindings;\n-#endif\n \n /* Prototypes for local functions. */\n static char *plural_lookup (struct loaded_l10nfile *domain,\n \t\t\t unsigned long int n,\n \t\t\t const char *translation, size_t translation_len);\n \n-#ifdef IN_LIBGLOCALE\n-static const char *guess_category_value (int category,\n-\t\t\t\t\t const char *categoryname,\n-\t\t\t\t\t const char *localename);\n-#else\n static const char *guess_category_value (int category,\n \t\t\t\t\t const char *categoryname);\n-#endif\n \n #ifdef _LIBC\n # include \"../locale/localeinfo.h\"\n@@ -364,7 +342,7 @@ static const char *guess_category_value (int category,\n #else\n static const char *category_to_name (int category);\n #endif\n-#if (defined _LIBC || HAVE_ICONV) && !defined IN_LIBGLOCALE\n+#if (defined _LIBC || HAVE_ICONV)\n static const char *get_output_charset (struct binding *domainbinding);\n #endif\n \n@@ -443,18 +421,9 @@ static int enable_secure;\n /* Look up MSGID in the DOMAINNAME message catalog for the current\n CATEGORY locale and, if PLURAL is nonzero, search over string\n depending on the plural form determined by N. */\n-#ifdef IN_LIBGLOCALE\n-char *\n-gl_dcigettext (const char *domainname,\n-\t const char *msgid1, const char *msgid2,\n-\t int plural, unsigned long int n,\n-\t int category,\n-\t const char *localename, const char *encoding)\n-#else\n char *\n DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n \t int plural, unsigned long int n, int category)\n-#endif\n {\n struct loaded_l10nfile *domain;\n struct binding *binding;\n@@ -469,7 +438,7 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n int saved_errno;\n struct known_translation_t search;\n struct known_translation_t **foundp = NULL;\n-#if defined HAVE_PER_THREAD_LOCALE && !defined IN_LIBGLOCALE\n+#if defined HAVE_PER_THREAD_LOCALE\n const char *localename;\n #endif\n size_t domainname_len;\n@@ -516,21 +485,16 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n search.domainname = domainname;\n search.category = category;\n #ifdef HAVE_PER_THREAD_LOCALE\n-# ifndef IN_LIBGLOCALE\n-# ifdef _LIBC\n+# ifdef _LIBC\n localename = __current_locale_name (category);\n-# else\n+# else\n categoryname = category_to_name (category);\n-# define CATEGORYNAME_INITIALIZED\n+# define CATEGORYNAME_INITIALIZED\n localename = _nl_locale_name_thread_unsafe (category, categoryname);\n if (localename == NULL)\n localename = \"\";\n-# endif\n # endif\n search.localename = localename;\n-# ifdef IN_LIBGLOCALE\n- search.encoding = encoding;\n-# endif\n \n /* Since tfind/tsearch manage a balanced tree, concurrent tfind and\n tsearch calls can be fatal. */\n@@ -562,12 +526,6 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n DETERMINE_SECURE;\n \n /* First find matching binding. */\n-#ifdef IN_LIBGLOCALE\n- /* We can use a trivial binding, since _nl_find_msg will ignore it anyway,\n- and _nl_load_domain and _nl_find_domain just pass it through. */\n- binding = NULL;\n- dirname = bindtextdomain (domainname, NULL);\n-#else\n for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next)\n {\n int compare = strcmp (domainname, binding->domainname);\n@@ -587,7 +545,6 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n else\n {\n dirname = binding->dirname;\n-#endif\n if (!IS_ABSOLUTE_PATH (dirname))\n \t{\n \t /* We have a relative path. Make it absolute now. */\n@@ -603,20 +560,13 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n \t goto return_untranslated;\n \t dirname = xdirname;\n \t}\n-#ifndef IN_LIBGLOCALE\n }\n-#endif\n \n /* Now determine the symbolic name of CATEGORY and its value. */\n #ifndef CATEGORYNAME_INITIALIZED\n categoryname = category_to_name (category);\n #endif\n-#ifdef IN_LIBGLOCALE\n- categoryvalue = guess_category_value (category, categoryname, localename);\n-#else\n categoryvalue = guess_category_value (category, categoryname);\n-#endif\n-\n domainname_len = strlen (domainname);\n xdomainname = (char *) malloc (strlen (categoryname)\n \t\t\t\t + domainname_len + 5);\n@@ -675,11 +625,7 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n \n if (domain != NULL)\n \t{\n-#if defined IN_LIBGLOCALE\n-\t retval = _nl_find_msg (domain, binding, encoding, msgid1, &retlen);\n-#else\n \t retval = _nl_find_msg (domain, binding, msgid1, 1, &retlen);\n-#endif\n \n \t if (retval == NULL)\n \t {\n@@ -687,13 +633,8 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n \n \t for (cnt = 0; domain->successor[cnt] != NULL; ++cnt)\n \t\t{\n-#if defined IN_LIBGLOCALE\n-\t\t retval = _nl_find_msg (domain->successor[cnt], binding,\n-\t\t\t\t\t encoding, msgid1, &retlen);\n-#else\n \t\t retval = _nl_find_msg (domain->successor[cnt], binding,\n \t\t\t\t\t msgid1, 1, &retlen);\n-#endif\n \n \t\t /* Resource problems are not fatal, instead we return no\n \t\t translation. */\n@@ -754,9 +695,6 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n \t\t newp->category = category;\n #ifdef HAVE_PER_THREAD_LOCALE\n \t\t newp->localename = new_localename;\n-#endif\n-#ifdef IN_LIBGLOCALE\n-\t\t newp->encoding = encoding;\n #endif\n \t\t newp->counter = _nl_msg_cat_cntr;\n \t\t newp->domain = domain;\n@@ -837,17 +775,10 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,\n in case of a memory allocation failure during conversion (only if\n ENCODING != NULL resp. CONVERT == true). */\n char *\n-#ifdef IN_LIBGLOCALE\n-_nl_find_msg (struct loaded_l10nfile *domain_file,\n-\t struct binding *domainbinding, const char *encoding,\n-\t const char *msgid,\n-\t size_t *lengthp)\n-#else\n _nl_find_msg (struct loaded_l10nfile *domain_file,\n \t struct binding *domainbinding,\n \t const char *msgid, int convert,\n \t size_t *lengthp)\n-#endif\n {\n struct loaded_domain *domain;\n nls_uint32 nstrings;\n@@ -953,16 +884,10 @@ _nl_find_msg (struct loaded_l10nfile *domain_file,\n }\n \n #if defined _LIBC || HAVE_ICONV\n-# ifdef IN_LIBGLOCALE\n- if (encoding != NULL)\n-# else\n if (convert)\n-# endif\n {\n /* We are supposed to do a conversion. */\n-# ifndef IN_LIBGLOCALE\n const char *encoding = get_output_charset (domainbinding);\n-# endif\n size_t nconversions;\n struct converted_domain *convd;\n size_t i;\n@@ -1056,12 +981,7 @@ _nl_find_msg (struct loaded_l10nfile *domain_file,\n \t\t reallocate domain->conversions because we pass\n \t\t encoding = NULL or convert = 0, respectively. */\n \t nullentry =\n-# ifdef IN_LIBGLOCALE\n-\t\t_nl_find_msg (domain_file, domainbinding, NULL, \"\",\n-\t\t\t &nullentrylen);\n-# else\n \t\t_nl_find_msg (domain_file, domainbinding, \"\", 0, &nullentrylen);\n-# endif\n \n \t /* Resource problems are fatal. If we continue onwards we will\n \t only attempt to calloc a new conv_tab and fail later. */\n@@ -1470,21 +1390,13 @@ category_to_name (int category)\n /* Guess value of current locale from value of the environment variables\n or system-dependent defaults. */\n static const char *\n-#ifdef IN_LIBGLOCALE\n-guess_category_value (int category, const char *categoryname,\n-\t\t const char *locale)\n-\n-#else\n guess_category_value (int category, const char *categoryname)\n-#endif\n {\n const char *language;\n-#ifndef IN_LIBGLOCALE\n const char *locale;\n-# ifndef _LIBC\n+#ifndef _LIBC\n const char *language_default;\n int locale_defaulted;\n-# endif\n #endif\n \n /* We use the settings in the following order:\n@@ -1501,18 +1413,17 @@ guess_category_value (int category, const char *categoryname)\n - If the system provides both a list of languages and a default locale,\n the former is used. */\n \n-#ifndef IN_LIBGLOCALE\n /* Fetch the locale name, through the POSIX method of looking to `LC_ALL',\n `LC_xxx', and `LANG'. On some systems this can be done by the\n `setlocale' function itself. */\n-# ifdef _LIBC\n+#ifdef _LIBC\n locale = __current_locale_name (category);\n-# else\n+#else\n locale_defaulted = 0;\n-# if HAVE_USELOCALE\n+# if HAVE_USELOCALE\n locale = _nl_locale_name_thread_unsafe (category, categoryname);\n if (locale == NULL)\n-# endif\n+# endif\n {\n locale = _nl_locale_name_posix (category, categoryname);\n if (locale == NULL)\n@@ -1521,7 +1432,6 @@ guess_category_value (int category, const char *categoryname)\n \t locale_defaulted = 1;\n \t}\n }\n-# endif\n #endif\n \n /* Ignore LANGUAGE and its system-dependent analogon if the locale is set\n@@ -1547,7 +1457,7 @@ guess_category_value (int category, const char *categoryname)\n language = getenv (\"LANGUAGE\");\n if (language != NULL && language[0] != '\\0')\n return language;\n-#if !defined IN_LIBGLOCALE && !defined _LIBC\n+#ifndef _LIBC\n /* The next priority value is the locale name, if not defaulted. */\n if (locale_defaulted)\n {\n@@ -1561,7 +1471,7 @@ guess_category_value (int category, const char *categoryname)\n return locale;\n }\n \n-#if (defined _LIBC || HAVE_ICONV) && !defined IN_LIBGLOCALE\n+#if (defined _LIBC || HAVE_ICONV)\n /* Returns the output charset. */\n static const char *\n get_output_charset (struct binding *domainbinding)\ndiff --git a/intl/gettextP.h b/intl/gettextP.h\nindex 9de46847ef..bc007e40e2 100644\n--- a/intl/gettextP.h\n+++ b/intl/gettextP.h\n@@ -70,18 +70,10 @@ extern void _nl_unload_domain (struct loaded_domain *__domain)\n # undef _INTL_REDIRECT_MACROS\n # define _INTL_REDIRECT_MACROS\n # include \"libgnuintl.h\"\n-# ifdef IN_LIBGLOCALE\n-extern char *gl_dcigettext (const char *__domainname,\n-\t\t\t const char *__msgid1, const char *__msgid2,\n-\t\t\t int __plural, unsigned long int __n,\n-\t\t\t int __category,\n-\t\t\t const char *__localename, const char *__encoding);\n-# else\n extern char *libintl_dcigettext (const char *__domainname,\n \t\t\t\t const char *__msgid1, const char *__msgid2,\n \t\t\t\t int __plural, unsigned long int __n,\n \t\t\t\t int __category);\n-# endif\n #endif\n \n #include \"loadinfo.h\"\n@@ -216,12 +208,7 @@ struct binding\n /* A counter which is incremented each time some previous translations\n become invalid.\n This variable is part of the external ABI of the GNU libintl. */\n-#ifdef IN_LIBGLOCALE\n-# include <glocale/config.h>\n-extern LIBGLOCALE_DLL_EXPORTED int _nl_msg_cat_cntr;\n-#else\n extern LIBINTL_DLL_EXPORTED int _nl_msg_cat_cntr;\n-#endif\n \n #ifndef _LIBC\n extern const char *_nl_language_preferences_default (void);\n@@ -258,18 +245,10 @@ void _nl_load_domain (struct loaded_l10nfile *__domain,\n \t\t struct binding *__domainbinding)\n attribute_hidden;\n \n-#ifdef IN_LIBGLOCALE\n-char *_nl_find_msg (struct loaded_l10nfile *domain_file,\n-\t\t struct binding *domainbinding, const char *encoding,\n-\t\t const char *msgid,\n-\t\t size_t *lengthp)\n- attribute_hidden;\n-#else\n char *_nl_find_msg (struct loaded_l10nfile *domain_file,\n \t\t struct binding *domainbinding, const char *msgid,\n \t\t int convert, size_t *lengthp)\n attribute_hidden;\n-#endif\n \n /* The internal variables in the standalone libintl.a must have different\n names than the internal variables in GNU libc, otherwise programs\ndiff --git a/intl/loadmsgcat.c b/intl/loadmsgcat.c\nindex f0afa37363..2bb339f3b9 100644\n--- a/intl/loadmsgcat.c\n+++ b/intl/loadmsgcat.c\n@@ -1256,12 +1256,7 @@ _nl_load_domain (struct loaded_l10nfile *domain_file,\n #endif\n \n /* Get the header entry and look for a plural specification. */\n-#ifdef IN_LIBGLOCALE\n- nullentry =\n- _nl_find_msg (domain_file, domainbinding, NULL, \"\", &nullentrylen);\n-#else\n nullentry = _nl_find_msg (domain_file, domainbinding, \"\", 0, &nullentrylen);\n-#endif\n if (__builtin_expect (nullentry == (char *) -1, 0))\n {\n #ifdef _LIBC\ndiff --git a/intl/localealias.c b/intl/localealias.c\nindex 5ab48d317d..fbb26d9efd 100644\n--- a/intl/localealias.c\n+++ b/intl/localealias.c\n@@ -294,14 +294,7 @@ read_alias_file (const char *fname, int fname_len)\n \t else if (cp[0] != '\\0')\n \t\t*cp++ = '\\0';\n \n-#ifdef IN_LIBGLOCALE\n-\t /* glibc's locale.alias contains entries for ja_JP and ko_KR\n-\t\t that make it impossible to use a Japanese or Korean UTF-8\n-\t\t locale under the name \"ja_JP\" or \"ko_KR\". Ignore these\n-\t\t entries. */\n-\t if (strchr (alias, '_') == NULL)\n-#endif\n-\t\t{\n+\t {\n \t\t size_t alias_len;\n \t\t size_t value_len;\n \ndiff --git a/intl/plural-exp.h b/intl/plural-exp.h\nindex f0d3a611e1..e5fea8949a 100644\n--- a/intl/plural-exp.h\n+++ b/intl/plural-exp.h\n@@ -109,7 +109,7 @@ extern void EXTRACT_PLURAL_EXPRESSION (const char *nullentry,\n \t\t\t\t unsigned long int *npluralsp)\n attribute_hidden;\n \n-#if !defined (_LIBC) && !defined (IN_LIBINTL) && !defined (IN_LIBGLOCALE)\n+#if !defined (_LIBC) && !defined (IN_LIBINTL)\n extern unsigned long int plural_eval (const struct expression *pexp,\n \t\t\t\t unsigned long int n);\n #endif\n", "prefixes": [ "1/3" ] }