From b76e572e68d97a9ac175c01df341aa0ee9bc0024 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Sun, 22 Feb 2026 00:46:31 +0000 Subject: [PATCH] libpci: ecam: Fix discards const from pointer target endptr is used as the return from strchr(addrs, ',') which is a const char. endptr is subsequently used as a pointer to the token which is char. Fix by not reusing endptr, but declare addrsptr as a const char * pointer for use in the first case addressing the warning. fixes: ecam.c: In function 'parse_next_addrs': ecam.c:620:10: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 620 | endptr = strchr(addrs, ','); | ^ Signed-off-by: Rudi Heitbaum --- lib/ecam.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/ecam.c b/lib/ecam.c index de8ecb5..65edd82 100644 --- a/lib/ecam.c +++ b/lib/ecam.c @@ -603,7 +603,7 @@ static int parse_next_addrs(const char *addrs, const char **next, int *domain, u8 *start_bus, u8 *end_bus, u64 *addr, u32 *length) { u64 ullnum; - const char *sep1, *sep2; + const char *addrsptr, *sep1, *sep2; int addr_len; char *endptr; long num; @@ -617,14 +617,14 @@ parse_next_addrs(const char *addrs, const char **next, int *domain, u8 *start_bu return 0; } - endptr = strchr(addrs, ','); - if (endptr) - addr_len = endptr - addrs; + addrsptr = strchr(addrs, ','); + if (addrsptr) + addr_len = addrsptr - addrs; else addr_len = strlen(addrs); if (next) - *next = endptr ? (endptr+1) : NULL; + *next = addrsptr ? (addrsptr+1) : NULL; sep1 = memchr(addrs, ':', addr_len); if (!sep1) -- 2.47.3