// Don't treat f.caller as a singleton property access, it
// has a non-default getter.
function f(obj) {
return f.caller;
}
function g(obj) {
return f(obj);
}
function gg(obj) {
return f.call(obj, obj);
}
assertEq(g({}), g);
actual = gg(function() {});
assertEq(actual, gg);