This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Another reason for home-grown kill() on VMS.
authorCraig A. Berry <craigberry@mac.com>
Mon, 2 Sep 2013 21:19:41 +0000 (16:19 -0500)
committerCraig A. Berry <craigberry@mac.com>
Mon, 2 Sep 2013 21:19:41 +0000 (16:19 -0500)
commitdb76cb3c1e2e7b3cb18b6ea4cef832197fd90c8e
treea8daac1ea08b97c7b9a3bf231f061bfef0e7007c
parenta96035c56e6096e8091826002c1d47a0595502f0
Another reason for home-grown kill() on VMS.

For some time now Perl has provided its own kill() function on VMS
due to various problems with the system-supplied one, notably that
when called from within a signal handler, the second signal never
got delivered.  This has at long last been corrected in the OS
as of the VMS84I_SYS V3.0 ECO.

But this exposes another problem with the CRTL's kill(), which is
that when called with a signal value of 0 it actually kills the
running program instead of restricting itself to error checking
as the standard requires.  This turns out to be documented behavior
and the documented workaround is to define the _POSIX_EXIT macro.

However, universally changing the behavior of the exit() function
in order to prevent

  kill(getpid(),0);

from bringing down the program that calls it doesn't seem like the
right trade-off.  So just add one more condition to the list of
conditions under which we'll use our own kill().
configure.com