From: KAWAJI Shinya Date: 2004-03-06T23:38:05+09:00 Subject: [ruby-dev:23156] Failure: test/ruby/test_proc.rb かわじ、です。 今、私の環境で cvs HEAD の test/runner.rb を動かすと、 1408 tests, 9543 assertions, 10 failures, 1 errors となるのですが、そのうち error と drb 関連のものを除くと 以下の二つが該当します。 $ (cd test && /tmp/ruby/bin/ruby -v ruby/test_proc.rb) ruby 1.9.0 (2004-03-06) [i386-openbsd3.4] Loaded suite ruby/test_proc Started FF. Finished in 0.200265 seconds. 1) Failure: test_arity(TestProc) [ruby/test_proc.rb:49:in `assert_arity' ruby/test_proc.rb:62:in `test_arity']: <0> expected but was <-1>. 2) Failure: test_eq(TestProc) [ruby/test_proc.rb:87]: <#> expected to be != to <#>. 3 tests, 22 assertions, 2 failures, 0 errors test_arity については、以下の部分がテストに失敗しています。 assert_arity(0) {||} ちょっと書き直すと、以下の通りです。 class A; define_method(:foo, Proc.new{||}); end assert_equal(0, A.new.method(:foo).arity) test_eq については、以下の部分です。 # [ruby-dev:22601] a = lambda {|x| lambda {} }.call(1) b = lambda {} assert_not_equal(a, b) 両者とも Failure になったのはおそらく eval.c 1.640 以降だと思うのですが、 仕様の変更なのかどうか分からなかったので、一応報告させていただきます。 自分で修正とかが出来ないのは、申し訳ないのですが。