On Tue, Apr 21, 2026 at 11:35:38PM +0200, Alejandro Colomar via Mutt-dev wrote:
> And here's the one from the Linux man-pages project:
> 
>       SYNOPSIS
>            #include <signal.h>
> 
>            typedef typeof(void (int))  *sighandler_t;
> 
>            sighandler_t signal(int signum, sighandler_t handler);

> The latter still uses typeof() --even if it also uses typedef-- for
> reasons similar to malloc_T().  If we didn't use typeof() in that
> typedef definition, it would become quite unreadable.

typedef void (*sighandler_t) (int);

It doesn't seem that unreadable and it's also shorter (although
declaring pointers to functions is tricky for the uninitiated).
Indeed, the man page for sigaction(2) still uses that style of
definition on my system [man-pages-6.13].

Ian Collier.

PS incidentally I don't have signal(3 anything) on my system - sections 2 and 7
only.

Reply via email to