[#11156] How to delete methods from superclass? — Clemens Hintze <c.hintze@...>

Hello,

25 messages 1998/12/01
[#11157] Re: How to delete methods from superclass? — matz@... (Yukihiro Matsumoto) 1998/12/01

Hi, Clemens.

[#11176] English List [Re: How to delete methods from superclass?] — gotoken@... (GOTO Kentaro) 1998/12/01

In message "[ruby-list:11157] Re: How to delete methods from superclass?"

[#11250] Ruby 用語集 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

25 messages 1998/12/08

[#11269] 京都 (Re: [ruby-dev:3789] Re: List()) — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

21 messages 1998/12/11
[#11299] Re: 京都 — MAEDA Shugo <shugo@...> 1998/12/12

前田です。

[#11393] mod_ruby — shugo@... (Shugo Maeda)

前田です。

28 messages 1998/12/21
[#11394] Re: mod_ruby — matz@... (Yukihiro Matsumoto) 1998/12/21

まつもと ゆきひろです

[#11398] Re: mod_ruby — shugo@... (Shugo Maeda) 1998/12/21

前田です。

[#11399] RE: mod_ruby — OZAWA Sakuro <crouton@...> 1998/12/21

さくです。

[#11408] Re: Be port — shugo@... (Shugo Maeda) 1998/12/22

前田です。

[#11464] ruby and IDE — Noritsugu Nakamura <nnakamur@...>

18 messages 1998/12/27
[#11465] goto (Re: ruby and IDE) — ttate@... 1998/12/27

立石です。

[ruby-list:11286] Re: require error?

From: IWAOKA Masahiro <iwaoka@...>
Date: 1998-12-11 08:33:22 UTC
List: ruby-list #11286
岩岡です。

In message <199812110632.PAA14588@picachu.netlab.co.jp>
	matz@netlab.co.jp (Yukihiro Matsumoto) writes:
> というエラーを見るとあるはずのファイル名がありません.という
> ことはf_require()に渡ったはずの socket という文字列が消えて
> なくなっているのでしょう.

gdb でちょっと追ってみました。

Breakpoint 2, load (file=0xef600
"/usr/local/lib/ruby/i386-bsdi3.1/socket.o")
    at dln.c:1038
1038        if (dln_init_p == 0) {
(gdb) print file
$4 = 0xef600 "/usr/local/lib/ruby/i386-bsdi3.1/socket.o"
(gdb) step
1039            if (dln_init(dln_argv0) == -1) return -1;
(gdb) next
1041        result = strlen(file);
(gdb) print file
$5 = 0xef600 ""

というように、load() が呼ばれた時点では file に正しいパス名が入っ
ているにもかかわらず、dln_init(dln_argv0) が呼ばれると空になってし
まうようです。

1039行目から step で追ってみると、どうやらガベコレが呼ばれているよ
うなので、もしかしてコレクションされちゃってる?

> gdbとかでf_require()の動きをトレースすれば一発で分かると思う
> のですが….スクリプトの長さで変化するという現象を見るとメモ
> リ関係だと思うのですが.alloca()がちゃんと動いてないのかなあ.

これを読んで、昔データが大きい時にうまく動かなくて GNU malloc lib
をリンクしてたのを思い出したのですが、今回は解決策になりませんでし
た;.;

中途半端ですが、とりあえずこのあたりで。

いわおか@実はちょっと訳あって自分の環境はFreeBSDに移行中

In This Thread