From: Kenta Murata Date: 2009-03-30T05:50:40+09:00 Subject: [ruby-dev:38207] [Bug #1328] "p eval('0' + '+0.1'*n)" の挙動 Bug #1328: "p eval('0' + '+0.1'*n)" の挙動 http://redmine.ruby-lang.org/issues/show/1328 起票者: Kenta Murata ステータス: Open, 優先度: Normal カテゴリ: core, Target version: 1.9.2 ruby -v: ruby 1.9.2dev (2009-03-29) [i386-darwin9.6.0] "p eval('0'+'+0.1'*n)" を評価すると、n がある値 N を超えたときに スタックが溢れますが、バージョン 1.9.2 の N が バージョン 1.9.1 より 小さくなっています。 $ ~/ruby-1.9.1-r22762/bin/ruby -ve "p eval('0'+'+0.1'*13093)" ruby 1.9.1p0 (2009-03-04 revision 22762) [i386-darwin9.6.0] 1309.2999999999 $ ~/ruby-1.9.1-r22762/bin/ruby -ve "p eval('0'+'+0.1'*13094)" ruby 1.9.1p0 (2009-03-04 revision 22762) [i386-darwin9.6.0] -e:1:in `eval': stack level too deep (SystemStackError) from -e:1:in `
' $ ~/ruby-1.9.2-r23093/bin/ruby -ve "p eval('0'+'+0.1'*7481)" ruby 1.9.2dev (2009-03-29) [i386-darwin9.6.0] 748.10000000010155 $ ~/ruby-1.9.2-r23093/bin/ruby -ve "p eval('0'+'+0.1'*7482)" ruby 1.9.2dev (2009-03-29) [i386-darwin9.6.0] -e:1:in `eval': stack level too deep (SystemStackError) from -e:1:in `
' ---------------------------------------- http://redmine.ruby-lang.org