Issue #10263 has been updated by Usaku NAKAMURA.

Backport changed from 2.0.0: REQUIRED, 2.1: DONE to 2.0.0: DONE, 2.1: DONE

Backported into `ruby_2_0_0` at r47987.

----------------------------------------
Bug #10263: `super` does not work from binding eval context
https://bugs.ruby-lang.org/issues/10263#change-49505

* Author: Charlie Somerville
* Status: Closed
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* ruby -v: ruby 2.2.0dev (2014-09-19 trunk 47643) [x86_64-darwin13]
* Backport: 2.0.0: DONE, 2.1: DONE
----------------------------------------
`super` is broken when called from inside a binding eval context.

Test case:

```
class A
  def foo
    puts "A#foo"
  end
end

class B < A
  def foo
    binding.eval("super")
  end
end

B.new.foo
```

Expected output:

```
A#foo
```

Actual output:

```
x.rb:11:in `foo': self has wrong type to call super in this context: B (expected Binding) (TypeError)
	from x.rb:11:in `eval'
	from x.rb:11:in `foo'
	from x.rb:15:in `<main>'
```

This appears to be a regression in 2.0.0, as the code sample above worked as expected on 1.9.3.



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