Issue #8436 has been updated by nagachika (Tomoyuki Chikanaga).


r40759 and r40966 are also required.
----------------------------------------
Backport #8436: __dir__ not working in eval with binding
https://bugs.ruby-lang.org/issues/8436#change-39945

Author: Gat (Dawid Janczak)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
Category: 
Target version: 


Hello,
I think I might have found a bug concerning the new __dir__ method.

Given binding (e.g. current top level binding) I would expect __dir__ to return the directory I'm in, similarly to how __FILE__ with binding does. Instead it returns nil.

I think I have found the solution, but since this is my first modification of Ruby code it might be inaccurate and not work in some cases. I hope it points to the right location though.
Please see attached patch along with a testcase showing the problem.

I also had to modify another testcase to use realpath when checking __dir__ functionality, please check if it's correct.


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