As of a couple days ago, buildfarm member caiman (Fedora rawhide) is failing like this in all the pre-v12 branches:
ccache gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -O2 -DFRONTEND -I../../src/include -D_GNU_SOURCE -I/usr/include/libxml2 -c -o wait_error.o wait_error.c wait_error.c: In function \342\200\230wait_result_to_str\342\200\231: wait_error.c:71:6: error: \342\200\230sys_siglist\342\200\231 undeclared (first use in this function) 71 | sys_siglist[WTERMSIG(exitstatus)] : "(unknown)"); | ^~~~~~~~~~~ wait_error.c:71:6: note: each undeclared identifier is reported only once for each function it appears in make[2]: *** [<builtin>: wait_error.o] Error 1
We haven't changed anything, ergo something changed at the OS level.
Oddly, we'd not get to this code unless configure set HAVE_DECL_SYS_SIGLIST, so it's defined *somewhere*. I suspect the root issue here is some rearrangement of system header files combined with wait_error.c (and maybe other places?) not including exactly the same headers that configure tested.
Anyway, rather than installing rawhide and trying to debug this, I'd like to make a modest proposal: let's back-patch the v12 patches that made us stop relying on sys_siglist[], viz a73d08319 and cc92cca43. Per the discussions that led to those patches, it's been decades since any platform didn't have POSIX-compliant strsignal(), so we'd be much better off relying on that.
regards, tom lane
I believe it's related with these recent glibc changes at rawhide.