michael@0: function g() { michael@0: return "global"; michael@0: } michael@0: michael@0: function q(fun) { michael@0: return fun(); michael@0: } michael@0: michael@0: function f(x) { michael@0: if (x) { michael@0: function g() { michael@0: return "local"; michael@0: } michael@0: var ans = q(function() { michael@0: return g(); michael@0: }); michael@0: } michael@0: g = null; michael@0: return ans; michael@0: } michael@0: michael@0: assertEq(f(true), "local");