Subject: Re: [PATCH v2 11/11] ci: run expensive tests on push builds to integration branches

From: Johannes Schindelin <[email-masked]>
Date: Wed, 6 May 2026 10:33:56 +0200 (CEST)

Hi Junio,

On Wed, 6 May 2026, Junio C Hamano wrote:

> https://github.com/git/git/actions/runs/25366120610/job/74377320625
> 
> We seem to be hitting the same _Generic error in various (but not all) jobs
> 
>   /usr/include/x86_64-linux-gnu/sys/cdefs.h:838:3: note: expanded from
> macro '__glibc_const_generic'
>     838 |   _Generic (0 ? (PTR) : (void *) 1,                     \
>         |   ^
>   Error: list-objects-filter-options.c:222:10: '_Generic' is a C11
> extension [-Werror,-Wc11-extensions]
> 
> I thought we updated the codebase to avoid stripping away constness
> with strchr() and friends, but the error seems to be more like one
> hand in the system passing -Wc11-extensions to stick to older version
> of C and the other hand in the system that uses _Generic to implement
> the const/non-const variants of strchr() in the system header not
> knowing that the other tells C11 const-preserving strchr() should not
> be used?

This was diagnosed (with a proposed fix) by Patrick over in
https://lore.kernel.org/git/[email-masked]/.

tl;dr It's not about `const`-ness at all, but about glibc using a C11
construct which clang's strict c99 checker now refuses, thanks to the
upgrade to Ubuntu 26.04 in the `ubuntu:rolling` runners.

Ciao,
Johannes