Issue #12832 has been updated by James Mead.
@nobu: Is it possible there is a separate problem with the code such that interrupt signals are incorrectly being ignored...?
----------------------------------------
Bug #12832: Calling Object#method hangs for private method defined on module then made public once it's been used to extend class
https://bugs.ruby-lang.org/issues/12832#change-61166
* Author: James Mead
* Status: Closed
* Priority: Normal
* Assignee: Koichi Sasada
* ruby -v: ruby 2.1.3p242 (2014-09-19 revision 47630) [x86_64-darwin14.0] onwards
* Backport: 2.1: REQUIRED, 2.2: REQUIRED, 2.3: REQUIRED
----------------------------------------
~~~ ruby
module Foo
private
def foo
"foo"
end
end
class Bar
extend Foo
class << self
public :foo
end
end
Bar.foo # => "foo"
Bar.method(:foo) # => #<Method: Class(Bar)#foo>
module Baz
end
class Bar
class << self
prepend Baz
end
end
Bar.method(:foo) # => hangs!
~~~
## Runs OK
* ruby 2.0.0p648 (2015-12-16 revision 53162) [x86_64-darwin14.5.0]
* ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin14.0]
* ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin14.0]
* ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-darwin14.0]
## Hangs on last line
* ruby 2.1.3p242 (2014-09-19 revision 47630) [x86_64-darwin14.0]
* ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-darwin14.0]
* ruby 2.1.10p492 (2016-04-01 revision 54464) [x86_64-darwin14.0]
* ruby 2.2.5p319 (2016-04-26 revision 54774) [x86_64-darwin14]
* ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin14]
* ruby 2.4.0preview2 (2016-09-09 trunk 56129) [x86_64-darwin14]
--
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>