Actions
Bug #11636
closedsuper in instance_eval in a method defined in a module is invoked with a wrong receiver
Bug #11636: super in instance_eval in a method defined in a module is invoked with a wrong receiver
Description
super in instance_eval in a method defined in a module is invoked with a wrong receiver:
class Foo def initialize @foo = :foo end def foo p [self, @foo] end end module M def foo x = Object.new x.instance_eval do super end end end class Bar < Foo include M end Bar.new.foo The output should be [#Foo:..., :foo] or an exception.
Matz prefer the former (https://twitter.com/yukihiro_matz/status/659913844861464576).
Files
Actions