[#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

えぐち@エスアンドイー です。

[ruby-dev:9595] Re: SIGFPE isn't raised on FreeBSD 4.0

From: nobu.nakada@...
Date: 2000-04-18 15:02:02 UTC
List: ruby-dev #9595
なかだです。

At Tue, 18 Apr 2000 22:44:18 +0900,
ARIMA Yasuhiro <fit0298@fitec.co.jp> wrote:
> まず、FreeBSD 固有の問題としてとらえるなら、バージョンの違いで
> 動作を変えるという対策は有効だと思います。
> 特に問題がなければ、1.4系、1.5系ともこの対処をお願いします。
> 
>   #if defined __FreeBSD__ && __FreeBSD__ < 4
>   #  include <floatingpoint.h>
>   #endif
> 
>   #if defined __FreeBSD__ && __FreeBSD__ < 4
>       /* allow divide by zero -- Inf */
>       fpsetmask(fpgetmask() & ~(FP_X_DZ|FP_X_INV|FP_X_OFL));
>   #endif

  fpsetmask() があれば無条件で呼んでしまっても構わないんじゃないかって
気もしますが。一回だけだし。

> 次に問題の本質の方ですが、どうしていいものやらよくわかりません。
> 
> |   fpsetmask() というのは BSD 系では結構一般的なようなので、Free BSD 限
> | 定よりももうちょっと一般的かなと。
> 
> ちなみに(ちなんでどうするつもりだ?)手近な SunOS 5.5.1 で
> man fpsetmask してみました。以下のものが使えます。

  ちなみついでに、SunOS だと div 0 はエラーになるんでしょうか。

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

In This Thread