Project

General

Profile

Actions

Bug #7743

closed

protected なメソッドを respond_to? で評価した時の結果が 1.9 と異なる

Added by hsbt (Hiroshi SHIBATA) about 11 years ago. Updated about 10 years ago.

Status:
Rejected
Target version:
ruby -v:
ruby 2.0.0dev (2013-01-27 trunk 38955) [x86_64-darwin12.2.1]
Backport:
[ruby-dev:46894]

Description

以下のようなコードを 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 の挙動に戻した方がよいと思います。

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0