| Message ID | 3197a710e4b6bd87166a0dde13812259d09b452f.1777074100.git.calvin@wbinvd.org |
|---|---|
| State | New |
| Headers |
Return-Path: <binutils-bounces~patchwork=sourceware.org@sourceware.org> 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 210ED4BB3BC7 for <patchwork@sourceware.org>; Sat, 25 Apr 2026 02:22:10 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 210ED4BB3BC7 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, secure) header.d=wbinvd.org header.i=@wbinvd.org header.a=rsa-sha256 header.s=wbinvd header.b=NWEuQ5dh X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-dy1-x1329.google.com (mail-dy1-x1329.google.com [IPv6:2607:f8b0:4864:20::1329]) by sourceware.org (Postfix) with ESMTPS id CBC744BB3B99 for <binutils@sourceware.org>; Sat, 25 Apr 2026 02:20:10 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CBC744BB3B99 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=wbinvd.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=wbinvd.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org CBC744BB3B99 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::1329 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777083611; cv=none; b=VgUO8/lvJYISnlNMlLMW4kobPayJjsqC3SobJWziBbLtlw0GWzWAVnkJvsTs4hJ0He8VsjVrWI3g5L14l2DCsy+a3Q2qyp/vkmBU6ykaVbIo8lUw0Ehmn0nT1cX97kmRV7opOAfDWQAx4AltS4fGEstEgD8buftBSXV54uu/tiQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777083611; c=relaxed/simple; bh=4NzhOrlOmDW2EEMcd+fYl9V8gnlIuah/eN/azzzm7sw=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=SvPVHTGxfHqbmdUHIQOKRrwqO+Y3XHzWvUZ1g5StkX7V/AEveHsR8prd//pdKRrRmSv0UbXhTLQVnCw25d0a5ndGGCMhZQ1Jj2aoZ8/VQ/8yLuC3zBf0rNpQcmIl04PjZ3ZQhK/Rp7ZVdLkQCMan1kVv8Ei0WVx5pDHdrn2O4aQ= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CBC744BB3B99 Received: by mail-dy1-x1329.google.com with SMTP id 5a478bee46e88-2e221a71e19so8329966eec.0 for <binutils@sourceware.org>; Fri, 24 Apr 2026 19:20:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wbinvd.org; s=wbinvd; t=1777083610; x=1777688410; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QSzRZeeIVKD4q8Do2lPCk+8eV3lMwpUqxNv6Xh+TEZ8=; b=NWEuQ5dh5X6IzbE4HYSj3bEvXTwYAwulqlwTcIdh/3fgQ8sODpnsLgFu2uV2pjClvF vfl33mOK1q9kXVe/B1jHo1fUrfSt1gaQCMGpcbov0LWCTeHne8/19VdKFJfhGrkKNEZh tnVu+wxnOglHtPSjmdvtbx2eYi4qLCSwefBy+Vk7x8bYuP7iE4ZNtTuJ/Oh+I6kDjx3a sL+pRSfdoU8dXU2GAGeOzBG8umJMKZw0KVR/IqG7+6DrkF/hSoCNOBfCO5jw/7h/EUgA kXmUlBMBkNkwmLKt0Lzr4k2hPfp2JFN0p3+B4/kNANTytAfgLnmMR5sEZyCUgi49DbHQ FgxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777083610; x=1777688410; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=QSzRZeeIVKD4q8Do2lPCk+8eV3lMwpUqxNv6Xh+TEZ8=; b=NbAzjHsrBjdOZBiNGcTj66bpdqU2VT491VWyTLKWkKz925D9Xp8pUbZ5+9h/hac7ke OPmiT48ELN9iueY0wKZq4n9USrxjy/uE6aeRdLsAMFf0pjQ7KgCXp9Sa+FoLomTE4OMD UCse0/GFgCYY1njQeu20yvWTIKGuSjIqAC62wSlYCKYnRhduSNsg3RkH6+VuRa2QL9d6 78Rn/jB6PRxUwFeuLnuQg0FvC4EGKlLNO7EIJzO659bAEdDb/o/Tul/ww1XnT4iuMDcw mc9t3RX6vm3dkUXoeftknoOQev6ZN+oA57IioQ704fekSKt0SkEI3Ee7UPP3Wtv7HPMP Ip/g== X-Gm-Message-State: AOJu0Yxqd5J15vKu/Sxa6XN/dqzxXluQ//pdeKHObcYLC5lDQeH4DTNl 5Y//PsfX1xjjnLeEPEtcq263eE7EwgcF6CYKM/xILxoleU8j3poVbtIaZcjlO2AaZYCZOJim3jI DzAf7 X-Gm-Gg: AeBDies7xLr88+E91RxU+ssN4ZpYfH+9tx6oQ2U8w13/XRjGfTqqSvOWgdQ4PM7zXQy XDB2lH8njOpTyusefkAIn6Xwt+ihHXcUGlmcyBnVNEBX9RJgK8vBilyTdEQQhF/Rloo8v0ss1xw 1fk9d/aNy663N1kEwndLhczDB+h+HazHPsoHNbCFnXo6JortiGlRiC84+/rADax33eWVvtRDi8Y Dw4WcYBiHDpRgmaz2gaX0lkqLXck9qVkUNLWYc0WobP7rkGcOBj4U4KOYyb5BXDqJ7Noi5FxGWh 2W27qUFOLD9sbfkyUyMHXwO4Fr9XQClhjAI8f3Qns3zn8Oe2+rXWFa5uxed0QbnknZMa0Dj2FMg zt5pdwIjpj4wGi4+TXsSlC6XrHBnj4hFyYqtfT9Hy1ZKfoelJZSSly4OwBvX2FccUHEJWtlSgZv 8EuV2yztB976jeBPTYOfdZEJqS6hp1erKejxyL X-Received: by 2002:a05:7300:7491:b0:2b7:38cf:c2fd with SMTP id 5a478bee46e88-2e4873f1afemr18729723eec.26.1777083609758; Fri, 24 Apr 2026 19:20:09 -0700 (PDT) Received: from mozart.vkv.me ([2001:5a8:468b:d015:1989:57e8:b4c5:739f]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2e53d8b944bsm34587278eec.28.2026.04.24.19.20.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Apr 2026 19:20:09 -0700 (PDT) From: Calvin Owens <calvin@wbinvd.org> To: binutils@sourceware.org Cc: simon.marchi@polymtl.ca, keiths@redhat.com, calvin@wbinvd.org Subject: [PATCH 4/4] ld: Fix discarded-qualifiers problems in ldelf.c Date: Fri, 24 Apr 2026 19:19:47 -0700 Message-ID: <3197a710e4b6bd87166a0dde13812259d09b452f.1777074100.git.calvin@wbinvd.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <cover.1777074100.git.calvin@wbinvd.org> References: <cover.1777074100.git.calvin@wbinvd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-11.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, 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: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list <binutils.sourceware.org> List-Unsubscribe: <https://sourceware.org/mailman/options/binutils>, <mailto:binutils-request@sourceware.org?subject=unsubscribe> List-Archive: <https://sourceware.org/pipermail/binutils/> List-Post: <mailto:binutils@sourceware.org> List-Help: <mailto:binutils-request@sourceware.org?subject=help> List-Subscribe: <https://sourceware.org/mailman/listinfo/binutils>, <mailto:binutils-request@sourceware.org?subject=subscribe> Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org |
| Series |
Fix build errors due to qualifier preserving strchr()
|
|
Commit Message
Calvin Owens
April 25, 2026, 2:19 a.m. UTC
../../ld/ldelf.c: In function ‘ldelf_search_needed’:
../../ld/ldelf.c:538:34: error: assignment discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers]
538 | if ((slash = strrchr (replacement, '/')) != NULL)
| ^
Fix this by passing the obviously equal non-const pointer to strrchr(),
instead of the const one.
../../ld/ldelf.c: In function ‘ldelf_parse_ld_so_conf_include’:
../../ld/ldelf.c:797:17: error: initialization discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers]
797 | char *p = strrchr (filename, '/');
| ^~~~~~~
Fix this by declaring the local pointer varaible as const, since it is
not modified.
Signed-off-by: Calvin Owens <calvin@wbinvd.org>
---
ld/ldelf.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Comments
Hi Calvin, On Fri, Apr 24, 2026 at 07:19:47PM -0700, Calvin Owens wrote: > ../../ld/ldelf.c: In function ‘ldelf_search_needed’: > ../../ld/ldelf.c:538:34: error: assignment discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers] > 538 | if ((slash = strrchr (replacement, '/')) != NULL) > | ^ > > Fix this by passing the obviously equal non-const pointer to strrchr(), > instead of the const one. This one I also found and fixed in almost the same way in https://inbox.sourceware.org/binutils/20260502170132.3303884-3-mark@klomp.org/ > > ../../ld/ldelf.c: In function ‘ldelf_parse_ld_so_conf_include’: > ../../ld/ldelf.c:797:17: error: initialization discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers] > 797 | char *p = strrchr (filename, '/'); > | ^~~~~~~ > > Fix this by declaring the local pointer varaible as const, since it is > not modified. Likewise. Again my apologies for not seeing your patch earlier. It would have saved me some unnecessary work. Cheers, Mark
On Sunday 05/03 at 14:34 +0200, Mark Wielaard wrote: > Hi Calvin, > > On Fri, Apr 24, 2026 at 07:19:47PM -0700, Calvin Owens wrote: > > ../../ld/ldelf.c: In function ‘ldelf_search_needed’: > > ../../ld/ldelf.c:538:34: error: assignment discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers] > > 538 | if ((slash = strrchr (replacement, '/')) != NULL) > > | ^ > > > > Fix this by passing the obviously equal non-const pointer to strrchr(), > > instead of the const one. > > This one I also found and fixed in almost the same way in > https://inbox.sourceware.org/binutils/20260502170132.3303884-3-mark@klomp.org/ > > > > > ../../ld/ldelf.c: In function ‘ldelf_parse_ld_so_conf_include’: > > ../../ld/ldelf.c:797:17: error: initialization discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers] > > 797 | char *p = strrchr (filename, '/'); > > | ^~~~~~~ > > > > Fix this by declaring the local pointer varaible as const, since it is > > not modified. > > Likewise. > > Again my apologies for not seeing your patch earlier. It would have > saved me some unnecessary work. No problem at all. It's really simple stuff, I had spun them for some local testing and just thought they might save you all some time. Please don't go to any extra trouble to use them :) Thanks, Calvin > Cheers, > > Mark
diff --git a/ld/ldelf.c b/ld/ldelf.c index 15d4b576bc0..518ea45397b 100644 --- a/ld/ldelf.c +++ b/ld/ldelf.c @@ -535,7 +535,7 @@ ldelf_search_needed (const char *path, struct dt_needed *n, int force, } replacement = freeme; - if ((slash = strrchr (replacement, '/')) != NULL) + if ((slash = strrchr (freeme, '/')) != NULL) * slash = 0; } } @@ -794,7 +794,7 @@ ldelf_parse_ld_so_conf_include (struct ldelf_ld_so_conf *info, if (pattern[0] != '/') { - char *p = strrchr (filename, '/'); + const char *p = strrchr (filename, '/'); size_t patlen = strlen (pattern) + 1; newp = xmalloc (p - filename + 1 + patlen);