From: WATANABE Tetsuya Date: 1999-08-18T17:10:02+09:00 Subject: [ruby-dev:7715] Re: [ruby-list:16198] Re: Ruby 1.4.0 渡辺哲也です。 In message "[ruby-list:16198] Re: Ruby 1.4.0" on 99/08/18, Yukihiro Matsumoto writes: |まつもと ゆきひろです | |これ以上はruby-devの方がよさそうな気がします。 では dev で。 |これを見ると、CLASS_OF()が変な(クラスでない)ものを返すオブジェ |クトに対して read メソッドを呼んでいるのがわかります。が、そ |のオブジェクトの klass メンバがなぜ壊れているかの理由はまだ |わかりません。 その通りです。File クラスでオープンして、読み込んでい るところで落ちています。 ------------------------------ f = File.open(file) $_ = f.read f.close ------------------------------ 該当行だけですが。 |#7 search_method での *(struct RClass*)klass の値とか、 |*(struct RBasic*)recv の値とかをみるともうちょっと分かるかも |しれません。 #7 0x804fb8e in search_method (klass=1075012152, id=6673, origin=0xbfffb46c) at eval.c:150 150 while (!st_lookup(RCLASS(klass)->m_tbl, id, &body)) { (gdb) print *(struct RClass*)klass $1 = {basic = {flags = 0, klass = 1075012132}, iv_tbl = 0x0, m_tbl = 0x0, super = 0} (gdb) print *(struct RBasic*)recv $2 = {flags = 1723390601, klass = 3137339392} これでいいでしょうか? -- WATANABE Tetsuya e-mail: Tetsuya_WATANABE@hp.com tetsu@jpn.hp.com