From: Nobuyoshi Nakada Date: 2009-04-08T00:41:22+09:00 Subject: [ruby-dev:38289] Re: Hashのデフォルト値のブロックで無限ループするとcore なかだです。 At Tue, 7 Apr 2009 20:36:00 +0900, SASADA Koichi wrote in [ruby-dev:38288]: >  最初の例は,Ruby から C を呼び出して,そこから Ruby を呼んで,それが C > に,というように,C 呼び出しが重なり,マシンスタックがオーバーフローしま > す.C レベルでの,マシンスタックのオーバーフローは,真面目に検出するのは > 大変なのでやっていない,ということじゃないかと思います.マシン・OS依存の > 検出方法はあるけれど,まぁそこまで真面目にやっていない,んじゃなかったで > したっけか(あれ,segv ハンドラ周りでなんかやってたっけ?). sigaltstack()のあるシステムでは検出しているはずです。ただし、ス タックオーバーフローとそれ以外のSEGVの判別には微妙な部分もあるの ですが、きしもとさんの環境が不明なのでなんともいえません。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦