[#9569] Re: [ruby-ext:01030] Re: gnome-ruby package — Hiroshi IGARASHI <igarashi@...>
いがらしです。
5 messages
2000/04/14
[#9581] SIGFPE isn't raised on FreeBSD 4.0 — gotoken@... (GOTO Kentaro)
ごとけんです
18 messages
2000/04/18
[#9582] Re: SIGFPE isn't raised on FreeBSD 4.0
— ARIMA Yasuhiro <fit0298@...>
2000/04/18
有馬です。
[#9583] Re: SIGFPE isn't raised on FreeBSD 4.0
— EGUCHI Osamu <eguchi@...>
2000/04/18
えぐち@エスアンドイー です。
[#9587] Re: SIGFPE isn't raised on FreeBSD 4.0
— nobu.nakada@...
2000/04/18
なかだです。
[#9588] Re: SIGFPE isn't raised on FreeBSD 4.0
— matz@... (Yukihiro Matsumoto)
2000/04/18
まつもと ゆきひろです
[#9589] Re: SIGFPE isn't raised on FreeBSD 4.0
— nobu.nakada@...
2000/04/18
なかだです。
[#9590] Re: SIGFPE isn't raised on FreeBSD 4.0
— matz@... (Yukihiro Matsumoto)
2000/04/18
まつもと ゆきひろです
[#9591] Re: SIGFPE isn't raised on FreeBSD 4.0
— nobu.nakada@...
2000/04/18
なかだです。
[#9592] Re: SIGFPE isn't raised on FreeBSD 4.0
— matz@... (Yukihiro Matsumoto)
2000/04/18
まつもと ゆきひろです
[#9599] module_eval — Tadayoshi Funaba <tadf@...>
ふなばです。
7 messages
2000/04/20
[ruby-dev:9582] Re: SIGFPE isn't raised on FreeBSD 4.0
From:
ARIMA Yasuhiro <fit0298@...>
Date:
2000-04-18 04:49:52 UTC
List:
ruby-dev #9582
有馬です。
gotoken@math.sci.hokudai.ac.jp (GOTO Kentaro) wrote
| numeric.c には FreeBSD で SIGFPE を起こさないための ifdef が
| 入ってます.まぁ現状でも問題は無いですが,FreeBSD 4.0 で
| fpsetmask() するのは無駄であることは確かです.しかし FreeBSD
| のバージョンによって ifdef するのもまた煩わしいですね.どう
| しますか??
FreeBSD のしくみとしては、以下のように括ればよいはずです。
まだ 3.x が主流なので Ruby 側で対処してもらえるとありがたいです。
#if __FreeBSD_version < 400012
# include <floatingpoint.h>
#endif
#if __FreeBSD_version < 400012
/* allow divide by zero -- Inf */
fpsetmask(fpgetmask() & ~(FP_X_DZ|FP_X_INV|FP_X_OFL));
#endif
上記の数値は fpsetmask 対処のタイミングとしては正確でないと思いますが、
これから 4.x 系を使いはじめる方にも、これまで通り 3.x 系を使う方にも
問題ない指定だと考えます。いかがでしょうか?
参考
http://www.jp.FreeBSD.org/www.FreeBSD.org/ja/handbook/
http://www.jp.FreeBSD.org/www.FreeBSD.org/ja/handbook/porting.html
--
有馬 康弘 <fit0298@fitec.co.jp>