[#24536] 「Rubyの落し方」 v.s. ruby_1_8 — akira yamada / やまだあきら <akira@...>

<URL:http://jp.rubyist.net/magazine/?0002-RubyCore>

40 messages 2004/10/20
[#24541] Re: 「Rubyの落し方」 v.s. ruby_1_8 — Yukihiro Matsumoto <matz@...> 2004/10/20

まつもと ゆきひろです

[#24599] 1.8.2 preview3? — akira yamada / やまだあきら <akira@...> 2004/10/26

2004-10-20 (水) の 21:38 +0900 に Yukihiro Matsumoto さんは書きました:

[#24605] Re: 1.8.2 preview3? — akira yamada / やまだあきら <akira@...> 2004/10/27

2004-10-26 (火) の 16:16 +0900 に akira yamada / やまだあきら さんは書きました:

[#24606] Re: 1.8.2 preview3? — Yukihiro Matsumoto <matz@...> 2004/10/27

まつもと ゆきひろです

[#24608] Re: 1.8.2 preview3? — akira yamada / やまだあきら <akira@...> 2004/10/27

2004-10-27 (水) の 11:48 +0900 に Yukihiro Matsumoto さんは書きました:

[#24620] Re: 1.8.2 preview3? — akira yamada / やまだあきら <akira@...> 2004/10/27

2004-10-27 (水) の 12:42 +0900 に akira yamada / やまだあきら さんは書きました:

[#24629] Re: 1.8.2 preview3? — Tanaka Akira <akr@...17n.org> 2004/10/29

In article <1098888819.9446.14.camel@rice.p.arika.org>,

[ruby-dev:24476] Zlib::Deflate#avail_out= dumps core, etc.

From: Tanaka Akira <akr@...17n.org>
Date: 2004-10-11 14:26:18 UTC
List: ruby-dev #24476
In article <1097484212.648808.14265.nullmailer@x31.priv.netlab.jp>,
  Yukihiro Matsumoto <matz@ruby-lang.org> writes:

> 1.9で引数の数を変更したのに対応していませんでした。ありがと
> うございます。

ふと思い立って、

% ruby -e 'argv = ARGV.dup;
methods = {}
ARGF.each {|line|
  if /rb_define_method\s*\(.*?"[^"]*"\s*,\s*([a-zA-Z0-9_]+)\s*,\s*(-?\d+)/ =~ line
    methods[$1] = $2.to_i
  end
}
ARGV.replace argv
ARGF.each {|line|
  if /\A[a-zA-Z0-9_]+/ =~ line && methods[$&]
    puts "#{methods[$&]}\t#{line.count(",")}\t#{line}"
  end
}
' *.c ext/**/*.c|sort

ということをしてみました。
(ARGF を 2回使ったのは始めてな気がする。)

すると、怪しげなものとして、

-1      0       fdbm_select(obj)
0       1       BigDecimal_neg(VALUE self, VALUE r)
0       1       proc_hash(self, other)
0       1       proc_to_s(self, other)
0       1       rb_zstream_set_avail_out(obj, size)
0       2       fole_func_methods( argc, argv, self )
0       2       fole_get_methods( argc, argv, self )
0       2       fole_put_methods( argc, argv, self )
1       0       name_err_mesg_to_str(obj)
1       0       rb_obj_pattern_match(obj)

なんていうものが出て来ました。

とりあえず、

% ./ruby -rzlib -e 'Zlib::Deflate.new.send(:avail_out=)'
-e:1: [BUG] Segmentation fault
ruby 1.9.0 (2004-10-11) [i686-linux]

というように Zlib::Deflate#avail_out= では core を吐けるようです。
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread