I'm experimentally rebuilding rawhide with the not-yet-released GCC 15 to see if anything breaks, and to help write the porting guide. See https://fedoraproject.org/wiki/User:Dmalcolm/gcc-15 My test build with GCC 15 failed: https://copr.fedorainfracloud.org/coprs/dmalcolm/gcc-15-smoketest-3/build/8410922/ whereas my test build with GCC 14 succeeded: https://copr.fedorainfracloud.org/coprs/dmalcolm/gcc-15-smoketest-3.checker/build/8410980/ Looking at the failure: https://download.copr.fedorainfracloud.org/results/dmalcolm/gcc-15-smoketest-3/fedora-rawhide-x86_64/08410922-6tunnel/builder-live.log.gz I see e.g.: | ^~ 6tunnel.c: In function ‘sighup’: 6tunnel.c:565:24: error: passing argument 2 of ‘signal’ from incompatible pointer type [-Wincompatible-pointer-types] 565 | signal(SIGHUP, sighup); | ^~~~~~ | | | void (*)(void) In file included from /usr/include/sys/wait.h:36, from 6tunnel.c:33: /usr/include/signal.h:88:57: note: expected ‘__sighandler_t’ {aka ‘void (*)(int)’} but argument is of type ‘void (*)(void)’ 88 | extern __sighandler_t signal (int __sig, __sighandler_t __handler) | ~~~~~~~~~~~~~~~^~~~~~~~~ This is probably due to GCC 15 now defaulting to -std=gnu23, whereas GCC 14 defaulted to -std=gnu17, and C23 is stricter about function prototypes than C17. It's probably fixable by fixing the function prototypes (or by manually adding -std=gnu17 to the C build flags) Reproducible: Always
This bug appears to have been reported against 'rawhide' during the Fedora Linux 42 development cycle. Changing version to 42.