On 2023-07-05 06:46, Cristian Rodríguez via Libc-alpha wrote: > char end_padding[]; --> This is incorrect, since struct rseq contains a > flexible array it must be the last member.. ? struct rseq doesn't contain a flexible array on the master branch, so there's no error here. Perhaps you tried to nest 'struct pthread' inside another struct? If so, the C standard doesn't allow that but the attached untested patch should be a trivial fix. Here's the wording in the C23 draft standard section 6.7.2.1 paragraph 3, which is what GCC is trying to enforce here: "the last member of a structure with more than one named member may have incomplete array type; such a structure (and any union containing, possibly recursively, a member that is such a structure) shall not be a member of a structure or an element of an array."