michael@0: // env.names() on object environments ignores property names that are not identifiers. michael@0: michael@0: var g = newGlobal(); michael@0: var dbg = Debugger(g); michael@0: var names; michael@0: g.h = function () { michael@0: names = dbg.getNewestFrame().environment.names(); michael@0: }; michael@0: g.eval("var obj = {a: 1};\n" + michael@0: "with ({a: 1, '0xcafe': 2, ' ': 3, '': 4, '0': 5}) h();"); michael@0: assertEq(names.indexOf("a") !== -1, true); michael@0: assertEq(names.indexOf("0xcafe"), -1); michael@0: assertEq(names.indexOf(" "), -1); michael@0: assertEq(names.indexOf(""), -1); michael@0: assertEq(names.indexOf("0"), -1);