[#38121] regex performace tuning and ABI compatibility — Yukihiro Matsumoto <matz@...>

まつもと ゆきひろです

13 messages 2009/03/03

[#38191] big time — Tanaka Akira <akr@...>

思い立って、time_t を越える範囲を Time で扱うことに挑戦して

31 messages 2009/03/27
[#38194] Re: big time — Tadayoshi Funaba <tadf@...> 2009/03/28

> 思い立って、time_t を越える範囲を Time で扱うことに挑戦して

[#38196] Re: big time — Tanaka Akira <akr@...> 2009/03/28

In article <20090328.134401.209982445.tadf@dotrb.org>,

[#38202] Re: big time — Urabe Shyouhei <shyouhei@...> 2009/03/29

卜部です。

[#38205] Re: big time — Tanaka Akira <akr@...> 2009/03/29

In article <49CF6641.7010204@ruby-lang.org>,

[#38218] rinda/eval.rb — Masatoshi SEKI <m_seki@...>

咳といいます。

20 messages 2009/03/30
[#38219] Re: rinda/eval.rb — Tanaka Akira <akr@...> 2009/03/31

In article <F01982B3-FBB5-497F-BA36-38FA250E7D69@mva.biglobe.ne.jp>,

[#38223] Re: rinda/eval.rb — Masatoshi SEKI <m_seki@...> 2009/03/31

咳といいます。

[#38229] Re: rinda/eval.rb — "U.Nakamura" <usa@...> 2009/04/01

こんにちは、なかむら(う)です。

[#38233] Re: rinda/eval.rb — Tanaka Akira <akr@...> 2009/04/01

In article <20090401095853.B00A.C613B076@garbagecollect.jp>,

[#38222] *BSD で fork できない理由 — "KISHIMOTO, Makoto" <ksmakoto@...4u.or.jp>

きしもとです

12 messages 2009/03/31

[ruby-dev:38208] [Bug #1329] Ruby 1.8.8 で "p eval('0' + '+0.1'*n)" が Segmentation Fault を発生させる

From: Kenta Murata <redmine@...>
Date: 2009-03-29 20:58:09 UTC
List: ruby-dev #38208
Bug #1329: Ruby 1.8.8 で "p eval('0' + '+0.1'*n)" が Segmentation Fault を発生させる
http://redmine.ruby-lang.org/issues/show/1329

起票者: Kenta Murata
ステータス: Open, 優先度: Normal
カテゴリ: core, Target version: Ruby 1.8.8
ruby -v: ruby 1.8.8dev (2009-03-19) [i386-darwin9.6.0]

"p eval('0' + '+0.1'*n)" を評価すると、
n がある値 N1 を超えたときに TypeError が、
N2 を超えたときに Segmentation Fault が発生します。
N1 と N2 がアーキテクチャに依存するかどうかは調べてません。

  $ ~/ruby-1.8.8-r23009/bin/ruby -ve "p eval('0'+'+0.1'*4581)"
  ruby 1.8.8dev (2009-03-19) [i386-darwin9.6.0]
  458.100000000036
  $ ~/ruby-1.8.8-r23009/bin/ruby -ve "p eval('0'+'+0.1'*4582)"
  ruby 1.8.8dev (2009-03-19) [i386-darwin9.6.0]
  -e:1: can't modify frozen string (TypeError)
  $ ~/ruby-1.8.8-r23009/bin/ruby -ve "p eval('0'+'+0.1'*5132)"
  ruby 1.8.8dev (2009-03-19) [i386-darwin9.6.0]
  -e:1: can't modify frozen string (TypeError)
  $ ~/ruby-1.8.8-r23009/bin/ruby -ve "p eval('0'+'+0.1'*5133)"
  ruby 1.8.8dev (2009-03-19) [i386-darwin9.6.0]
  Segmentation fault

eval しなければ TypeError も SEGV も発生しないことは確認済です。

  $ ~/ruby-1.8.8-r23009/bin/ruby -ve "'0'+'+0.1'*5133"
  ruby 1.8.8dev (2009-03-19) [i386-darwin9.6.0]
  -e:1: warning: useless use of + in void context


----------------------------------------
http://redmine.ruby-lang.org

In This Thread

Prev Next