From b82c06a711cbd1f812251a15c1e864027abe8c37 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Sun, 30 Apr 2023 23:21:59 +0900 Subject: Handle private AREF call in compile.c --- test/ruby/test_method.rb | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'test') diff --git a/test/ruby/test_method.rb b/test/ruby/test_method.rb index a04666890e..80b8fe277b 100644 --- a/test/ruby/test_method.rb +++ b/test/ruby/test_method.rb @@ -771,6 +771,14 @@ class TestMethod < Test::Unit::TestCase assert_raise(NoMethodError) { (self).mv2 } assert_nothing_raised { self.mv3 } + class << (obj = Object.new) + private def [](x) x end + def mv1(x) self[x] end + def mv2(x) (self)[x] end + end + assert_nothing_raised { obj.mv1(0) } + assert_raise(NoMethodError) { obj.mv2(0) } + v = Visibility.new assert_equal('method', defined?(v.mv1)) -- cgit v1.2.1