[#28230] bcc32 memory manager — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

15 messages 2006/01/18

[#28243] FUNCTION_CALL_MAY_RETURN_TWICE — Hajimu UMEMOTO <ume@...>

梅本です。

18 messages 2006/01/20

[#28270] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

17 messages 2006/01/23
[#28271] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2006/01/23

山本です。

[#28272] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — WATANABE Hirofumi <eban@...> 2006/01/23

わたなべです。

[#28273] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2006/01/23

山本です。

[#28274] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2006/01/24

山本です。

[#28275] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — "U.Nakamura" <usa@...> 2006/01/24

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

[#28286] SEGV with zlib — Tanaka Akira <akr@...17n.org>

最近、Data オブジェクトの free 関数が気になっているのですが、

24 messages 2006/01/30
[#28303] Re: SEGV with zlib — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2006/02/06

山本です。

[#28304] Re: SEGV with zlib — Yukihiro Matsumoto <matz@...> 2006/02/06

まつもと ゆきひろです

[#28305] Re: SEGV with zlib — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2006/02/06

山本です。

[#28306] Re: SEGV with zlib — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2006/02/06

山本です。

[#28307] Re: SEGV with zlib — Tietew <tietew-ml-ruby-dev@...> 2006/02/06

[#28308] Re: SEGV with zlib — Yukihiro Matsumoto <matz@...> 2006/02/06

まつもとゆきひろです。

[ruby-dev:28230] bcc32 memory manager

From: "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Date: 2006-01-18 07:47:03 UTC
List: ruby-dev #28230
山本です。

bcc32 の信じられないバグを見つけてしまいました。
私の環境だと、これだけで落ちます。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    for (int i = 0; i < 10000; ++i)
    {
        void *p = malloc(1048574); // > 1MB?

        free(p);
    }
}

このせいで下のスクリプトが落ちます。

s = "." * 529671

10000.times do |i|
  puts i
  GC.start
  "" << s
end

これは RTL のメモリマネージャのバグのようで、
borlndmm.dll という、C++Builder に付属するメモリ
マネージャを使うと落ちません。(VCLアプリを作る
ときは、こちらが使われるので影響しません)

  bcc32 -tWR -tWC main.c usebormm.lib 

  dynamic RTL を使い、usebormm.lib をリンクする。
  他の lib より先にリンクする必要がある。

ただし、これはフリーのコンパイラには付属して
おらず、他から dll と lib を持ってこないと
回避できません。

どうしたらいいでしょう?(泣)あと、私の環境
でだけ起きていることじゃないことを確認したい
ので、確かめてもらえませんか > bcc32 ユーザ



In This Thread

Prev Next