From: "hsbt (Hiroshi SHIBATA)" Date: 2013-01-27T21:24:27+09:00 Subject: [ruby-dev:46894] [ruby-trunk - Bug #7743][Open] protected なメソッドを respond_to? で評価した時の結果が 1.9 と異なる Issue #7743 has been reported by hsbt (Hiroshi SHIBATA). ---------------------------------------- Bug #7743: protected なメソッドを respond_to? で評価した時の結果が 1.9 と異なる https://bugs.ruby-lang.org/issues/7743 Author: hsbt (Hiroshi SHIBATA) Status: Open Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: core Target version: 2.0.0 ruby -v: ruby 2.0.0dev (2013-01-27 trunk 38955) [x86_64-darwin12.2.1] 以下のようなコードを 1.9.3 と 2.0.0 で実行した時の結果が異なるようです。 % cat respond_to.rb class A def initialize p respond_to?(:foo) p respond_to?(:foo, true) end protected def foo end end A.new 実行結果は以下の通りです。 % ruby -v respond_to.rb ruby 1.9.3p375 (2013-01-18 revision 38876) [x86_64-darwin12.2.1] true true % ruby -v respond_to.rb ruby 2.0.0dev (2013-01-27 trunk 38955) [x86_64-darwin12.2.1] false true この挙動の違いは不具合と思うのですが確認していただけないでしょうか。 もし意図した挙動である場合、影響範囲が大きいので 1.9 の挙動に戻した方がよいと思います。 -- http://bugs.ruby-lang.org/