Trying build mailutils-3.21 on Fedora 44 x86_64 (gcc-16.1.1, glibc-2.43)
it ended with this error:
...
CC mailer.lo
In file included from /usr/include/bits/libc-header-start.h:33,
from /usr/include/stdio.h:28,
from mailer.c:22:
/usr/include/features.h:451:4: warning: #warning _FORTIFY_SOURCE requires
compiling with optimization (-O) [-Wcpp]
451 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| ^~~~~~~
mailer.c: In function 'recover_email':
mailer.c:340:5: warning: assignment discards 'const' qualifier from pointer
target type [-Wdiscarded-qualifiers]
340 | p = strchr (string, '<');
| ^
CC progmailer.lo
In file included from /usr/include/errno.h:25,
from progmailer.c:22:
/usr/include/features.h:451:4: warning: #warning _FORTIFY_SOURCE requires
compiling with optimization (-O) [-Wcpp]
451 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| ^~~~~~~
progmailer.c: In function 'mu_progmailer_create':
progmailer.c:63:18: error: assignment to 'void (*)(void)' from incompatible
pointer type 'void (*)(int)' [-Wincompatible-pointer-types]
63 | pm->sighandler = SIG_ERR;
| ^
progmailer.c: In function 'mu_progmailer_open':
progmailer.c:116:23: error: assignment to 'void (*)(void)' from incompatible
pointer type '__sighandler_t' {aka 'void (*)(int)'}
[-Wincompatible-pointer-types]
116 | if ((pm->sighandler = signal (SIGCHLD, SIG_DFL)) == SIG_ERR)
| ^
In file included from progmailer.c:27:
/usr/include/signal.h:72:16: note: '__sighandler_t' declared here
72 | typedef void (*__sighandler_t) (int);
| ^~~~~~~~~~~~~~
progmailer.c:116:52: warning: comparison of distinct pointer types lacks a cast
[-Wcompare-distinct-pointer-types]
116 | if ((pm->sighandler = signal (SIGCHLD, SIG_DFL)) == SIG_ERR)
| ^~
progmailer.c: In function 'mu_progmailer_close':
progmailer.c:295:22: warning: comparison of distinct pointer types lacks a cast
[-Wcompare-distinct-pointer-types]
295 | if (pm->sighandler != SIG_ERR
| ^~
progmailer.c:296:29: error: passing argument 2 of 'signal' from incompatible
pointer type [-Wincompatible-pointer-types]
296 | && signal (SIGCHLD, pm->sighandler) == SIG_ERR)
| ~~^~~~~~~~~~~~
| |
| void (*)(void)
/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)
| ~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/signal.h:72:16: note: '__sighandler_t' declared here
72 | typedef void (*__sighandler_t) (int);
| ^~~~~~~~~~~~~~
progmailer.c:302:18: error: assignment to 'void (*)(void)' from incompatible
pointer type 'void (*)(int)' [-Wincompatible-pointer-types]
302 | pm->sighandler = SIG_ERR;
| ^
--
Thanks, Franta Hanzlik