Closed fweimer-rh closed 7 months ago
Okay, the SIG_TAKES_ARG is easy to fix (and that by itself fixes the wxwidgets build). A possible solution for the X11 and termcap is to just not support them on GCC 14. (Tho' I will try and fix them as well.)
Fixes:
@fweimer-rh I think this is now fixed on the master branch (if you double check with gcc 14 let me know). I plan on making a new point release in the next few weeks that includes this and other fixes since 6.2.4
Thank you. I applied 30b1223b4979a18132d599792c995264c299ba4e and d300824c6eaf5f98faded7c51ea799b32be7a50b to the Fedora package and could build it with GCC 14.
I tried to get ucblogo ready for GCC 14, and encountered the following issues:
SIG_TAKES_ARG
should be defined on GNU/Linux because it uses standard C signal handlers which receive the signal number as an argument. I expect that this is needed on all platforms these days, not just GNU/Linux.checkX
macro. This macro has areturn;
statement without a value. But the macro is used (indirectly, viaprepare_to_draw
) in functions that return a pointer. Not sure what the best way is to fix this.termcap_getter
, the functiontermcap_putter
in the call totputs
has the wrong type.You can approximate newer compiler behavior with
-Werror=implicit-int -Werror=implicit-function-declaration -Werror=int-conversion -Werror=incompatible-pointer-types -Werror=return-type
, although-Werror=return-type
will flag some things as errors that GCC 14 will still accept by default. Current Clang releases have similar behavior.