From d1c142cff6ba9313d7ec151d7a4c23a49a087c56 Mon Sep 17 00:00:00 2001 From: Vincenzo Palazzo Date: Tue, 21 Apr 2026 10:09:21 -0400 Subject: [PATCH] common/wireaddr: fix GCC 15 const-qualifier errors GCC 15 propagates the const qualifier through strchr/strrchr, so the result of strchr(const char *, c) is const char *. Declaring the locals as char * triggers -Werror=discarded-qualifiers: common/wireaddr.c: In function 'separate_address_and_port': common/wireaddr.c:297:29: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] common/wireaddr.c:304:27: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] Make portcolon and end const char * to match; both are only read. Fixes: https://github.com/ElementsProject/lightning/issues/9074 Changelog-Fixed: build: fix build errors with GCC 15 (Arch Linux). --- common/wireaddr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common/wireaddr.c b/common/wireaddr.c index b110ed549050..c4e840ea80f5 100644 --- a/common/wireaddr.c +++ b/common/wireaddr.c @@ -291,10 +291,10 @@ char *fmt_wireaddr(const tal_t *ctx, const struct wireaddr *a) bool separate_address_and_port(const tal_t *ctx, const char *arg, char **addr, u16 *port) { - char *portcolon; + const char *portcolon; if (strstarts(arg, "[")) { - char *end = strchr(arg, ']'); + const char *end = strchr(arg, ']'); if (!end) return false; /* Copy inside [] */