* zic.c (doabbr): Declare local var to be char const *, not char *.
C23 says strchr is now a qualifier-preserving generic macro,
so zic cannot use strchr to silently convert char const * to char *.
This pacifies GCC 15.2 -Wdiscarded-qualifiers when compiling
with glibc 2.43 (2026-01-24).
---
zic.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/zic.c b/zic.c
index 70a2ab09..c10be426 100644
--- a/zic.c
+++ b/zic.c
@@ -3114,11 +3114,10 @@ doabbr(char *abbr, struct zone const *zp, char const
*letters,
bool isdst, zic_t save, bool doquotes)
{
register char * cp;
- register char * slashp;
ptrdiff_t len;
char const *format = zp->z_format;
+ char const *slashp = strchr(format, '/');
- slashp = strchr(format, '/');
if (slashp == NULL) {
char letterbuf[PERCENT_Z_LEN_BOUND + 1];
if (zp->z_format_specifier == 'z')
--
2.51.0