On Tue, 17 Apr 2007, youshi10@u.washington.edu wrote: > Try this: > > perl -e 'kill 15, undef; print "Hello, cruel world!";' > > And yes, I was the person that originally sent the bug report. If > someone could provide me with the POSIX spec that says that an > undefined value equals 0, and a 0 value with kill works out to kill > the calling process, I'd appreciate it. From `perldoc -f kill`: kill SIGNAL, LIST Sends a signal to a list of processes. Returns the number of processes successfully signaled (which is not necessarily the same as the number actually killed). Processes are identified by PID, which is a number. `perldoc perlsyn` says this: When used as a number, "undef" is treated as 0; when used as a string, it is treated as the empty string, This means that kill(15, undef) should be treated the same as kill(15, 0) due to Perl data transformation rules. POSIX (http://www.opengroup.org/onlinepubs/009695399/functions/kill.html) says this about using a PID of 0: If pid is 0, sig shall be sent to all processes (excluding an unspecified set of system processes) whose process group ID is equal to the process group ID of the sender, and for which the process has permission to send a signal. Therefore `kill(15, undef)` should send signal 15 to all processes in the current process group, including the process issuing the kill() call itself. Cheers, -JanThread Previous | Thread Next