From: nobu.nakada@... Date: 2000-02-09T07:41:06+09:00 Subject: [ruby-dev:9159] Re: ruby-1.4.3 memory leak なかだです。 なんかもう解決したみたいで、おまけに Ruby とはあんまり関係ない ですが…。 At Tue, 8 Feb 2000 08:26:25 +0900, Koji Oda wrote: > > このメモリ読み込みオーバーフローって、何を指してるんでしょうか。 > > ひょっとして、引数が int* p と宣言されていたら、*p しか使っちゃい > > けなくて、p[1] を使うと警告されるとか? > > いえ、そういうわけではないです。 > 説明には、 > このエラーは、メモリ ブロックの有効範囲を超えて、 > 読み込み処理を行おうとしたときに発生します。 > とありました。 > > char *x = "hoge"; > char y[10]; > memcpy(y, x, sizeof(y)); > というようなケースの時にでるということでした。 でも、一度関数の引数になってしまったら配列の要素数は(少なくとも 静的な解析だけでは)分からないのでは? 2つ目と3つ目はそういうこと だと思えるのですが。 > # でも、io.c のgetc で出るのはよく分からないんですよね。 これも同根のような気がしてます。マクロで隠されてるだけで。 At Tue, 8 Feb 2000 09:09:06 +0900, Koji Oda wrote: > 解決しました。 > > 構造体メンバのアライメントを4バイトに変更していたのが > 原因でした。 > 既定値の8バイトに戻したら、オーバーフローのエラーは > 消えました。 なんかますますもって謎です(^^;。 -- そうだ 強気に ちょっと インチキに☆彡 中田 "Bugるくらいがちょうどいいかも;-)" 伸悦