This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
add PERL_USE_3ARG_SIGHANDLER macro
authorDavid Mitchell <davem@iabyn.com>
Mon, 11 Nov 2019 10:46:56 +0000 (10:46 +0000)
committerDavid Mitchell <davem@iabyn.com>
Mon, 18 Nov 2019 09:34:40 +0000 (09:34 +0000)
commit5e7940ceb0d598dfa2aefdcdbda1f1dd8caa6bfd
treebba6083512c9b38309f000f789e1721c66e0a7e5
parente7124897b9f4ae403795f9db247a331b6da9751e
add PERL_USE_3ARG_SIGHANDLER macro

There are a bunch of places in core that do

   #if defined(HAS_SIGACTION) && defined(SA_SIGINFO)

to decide whether the C signal handler function should be declared with,
and called with, 1 arg or 3 args.

This commit just adds

   #if defined(HAS_SIGACTION) && defined(SA_SIGINFO)
   #  define PERL_USE_3ARG_SIGHANDLER
   #endif

Then uses the new macro in all other places rather than checking
HAS_SIGACTION and SA_SIGINFO. Thus there is no functional change; it just
makes the code more readable.

However, it turns out that all is not well with core's use of 1-arg
versus 3-arg, and the few commits will fix this.
embed.fnc
embed.h
iperlsys.h
mg.c
perl.h
proto.h