なかだです。

At Sat, 9 Oct 1999 14:44:05 +0900,
SHUDO Kazuyuki <shudoh / muraoka.info.waseda.ac.jp> wrote:
>   #if !defined(POSIX_SIGNAL) && !defined(BSD_SIGNAL)
>       ruby_signal(sig, sighandle);
>   #endif
> 
> と、マクロ POSIX_SIGNAL が定義されている場合はシグナルハ
> ンドラの再設定をしないようになっています。しかし、
> POSIX_SIGNAL は、関数 sigprocmask と sigaction が利用で
> きる場合にセットされるものなので、このマクロを、
> 再設定が要るか要らないかの判断に用いるのは適当ではないと思います。
> 
>   - POSIX_SIGNAL
>     sigaction() と sigprocmask() が利用できる場合にセットされる。
>   - BSD_SIGNAL
>     シグナルが発生してもシグナルハンドラが (SIG_DFL に) 変更されないなら、
>     セットされる。

  単に sigaction() と sigprocmask() が利用できるということだけで
はなくて、この2つがあるということは POSIX signal semantics に従
うシステムであるということで POSIX_SIGNAL がセットされるんじゃな
いでしょうか。POSIX ではシグナルハンドラが変更されないことを求め
てるはずなので、間違いではないのでは?

> シグナルっていろいろやっかいですね。#腕の見せどころではありますが。

  移植性を考えるととくに面倒ですね。

-- 
そうだ 強気に ちょっと インチキに☆彡
    中田 "Bugるくらいがちょうどいいかも;-)" 伸悦