From 4e1ee809bbf78dc7edb3350628bf80c3e0133fee Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 23 Oct 2015 22:29:14 +0000 Subject: forwardable.rb: full qualify names * lib/forwardable.rb (def_instance_delegator, def_single_delegator): match backtraces against ::Forwardable in case the target class is a subclass of BasicObject and does not include Kernel. [ruby-core:71176] [Bug #11616] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/test_forwardable.rb | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'test/test_forwardable.rb') diff --git a/test/test_forwardable.rb b/test/test_forwardable.rb index 9b26019893..6dd015e5a4 100644 --- a/test/test_forwardable.rb +++ b/test/test_forwardable.rb @@ -110,6 +110,19 @@ class TestForwardable < Test::Unit::TestCase assert_not_match(/\/forwardable\.rb/, e.backtrace[0]) end + class Foo2 < BasicObject + extend ::Forwardable + + def_delegator :bar, :baz + end + + def test_basicobject_subclass + bug11616 = '[ruby-core:71176] [Bug #11616]' + assert_raise_with_message(NameError, /`bar'/, bug11616) { + Foo2.new.baz + } + end + private def forwardable_class(&block) -- cgit v1.2.3