Issue #14094 has been reported by headius (Charles Nutter).

----------------------------------------
Bug #14094: IRB does not obey frame-level visibility modifiers
https://bugs.ruby-lang.org/issues/14094

* Author: headius (Charles Nutter)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.3.4
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN
----------------------------------------
I noticed the following today; IRB does not appear to obey the frame-local visibility modifiers like public and private:

```
$ irb
:here
irb(main):001:0> private
=> Object
irb(main):002:0> def foo; end; self.class.public_instance_methods.grep :foo
=> [:foo]
irb(main):003:0> private def foo; end; self.class.public_instance_methods.grep :foo
=> []
```

Note that the binding these commands are executed in is a method scope binding that *also* has its frame-local visibility set to private, so it seems like IRB is not working properly here.



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>