[ruby-dev:48039] [ruby-trunk - Bug #7743] protected なメソッドを respond_to? で評価した時の結果が 1.9 と異なる
From:
kosaki.motohiro@...
Date:
2014-03-14 03:08:37 UTC
List:
ruby-dev #48039
Issue #7743 has been updated by Motohiro KOSAKI.
おおっと、間違えて変な変更をSubmitしてしまいました。無視してください
----------------------------------------
Bug #7743: protected なメソッドを respond_to? で評価した時の結果が 1.9 と異なる
https://bugs.ruby-lang.org/issues/7743#change-45778
* Author: Hiroshi SHIBATA
* Status: Rejected
* Priority: Normal
* Assignee: Akinori MUSHA
* Category: core
* Target version: 2.0.0
* ruby -v: ruby 2.0.0dev (2013-01-27 trunk 38955) [x86_64-darwin12.2.1]
* Backport:
----------------------------------------
以下のようなコードを 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/