// 'this' is lexically scoped in arrow functions in direct eval code

var obj = {
    f: function (s) {
        return eval(s);
    }
};

var g = obj.f("a => this");
assertEq(g(), obj);

var obj2 = {g: g, fail: true};
assertEq(obj2.g(), obj);