Project

General

Profile

ActionsLike0

Bug #1721

closed

NaN.divmod(NaN) が例外にならない

Added by tadf (tadayoshi funaba) over 15 years ago. Updated over 13 years ago.

Status:
Closed
Assignee:
-
Target version:
ruby -v:
ruby 1.9.2dev (2009-07-03 trunk 23945) [i686-linux]
Backport:
[ruby-dev:38726]

Description

=begin
1.8 では NaN.divmod(NaN) などは例外になっていました。

NaN.divmod(1) #=> [NaN, NaN]
NaN.divmod(NaN) #=> [NaN, NaN]
1.divmod(NaN) #=> [NaN, NaN]

NaN.div(NaN) などは例外になることから、divmod も例外になるように思います。

ruby 1.9.2dev (2009-07-03 trunk 23945) [i686-linux]
ruby 1.9.1p129 (2009-05-12 revision 23412) [i686-linux]
=end

Like0Actions #1

Updated by matz (Yukihiro Matsumoto) over 15 years ago

=begin
まつもと ゆきひろです

In message "Re: [ruby-dev:38726] [Bug #1721] NaN.divmod(NaN) が例外にならない"
on Fri, 3 Jul 2009 22:01:47 +0900, tadayoshi funaba writes:

|1.8 では NaN.divmod(NaN) などは例外になっていました。

なんか、どのバージョンも一貫性が維持されていないように思いま
す。どうするのがよいでしょうね。

     	1.8     1.9

加 NaN NaN
減 NaN NaN
乗 NaN NaN
除 NaN NaN
modulo NaN NaN
remainer NaN NaN
div 例外 例外
divmod 例外 NaN

|NaN.div(NaN) などは例外になることから、divmod も例外になるように思います。

整数除算だけ例外にする特別の理由を思いつかないので、逆にdivを
NaNにするべきなのかもしれません。忘れてるのかなあ。divが例外
を発生するようになった経緯を覚えていらっしゃる方は居ますか?

=end

Like0Actions #2

Updated by matz (Yukihiro Matsumoto) over 15 years ago

=begin
まつもと ゆきひろです

In message "Re: [ruby-dev:38727] Re: [Bug #1721] NaN.divmod(NaN) が例外にならない"
on Sat, 4 Jul 2009 01:42:18 +0900, Yukihiro Matsumoto writes:

| 1.8 1.9
|加 NaN NaN
|減 NaN NaN
|乗 NaN NaN
|除 NaN NaN
|modulo NaN NaN
|remainer NaN NaN
|div 例外 例外
|divmod 例外 NaN
|
||NaN.div(NaN) などは例外になることから、divmod も例外になるように思います。
|
|整数除算だけ例外にする特別の理由を思いつかないので、逆にdivを
|NaNにするべきなのかもしれません。忘れてるのかなあ。divが例外
|を発生するようになった経緯を覚えていらっしゃる方は居ますか?

一晩寝たら、整数化という行為がFloatDomainErrorを発生させてい
ることに気がつきました。divmodが例外を発生させるように直しま
す。すみません。

=end

ActionsLike0

Also available in: Atom PDF