summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Frame-evalWithBindings-11.js
blob: 4d17304053de5df0ed91167e0a1a651db92cb90c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// var statements in non-strict evalWithBindings code behave like non-strict direct eval.
var g = newGlobal({newCompartment: true});
var dbg = new Debugger(g);
var log;
dbg.onDebuggerStatement = function (frame) {
  log += 'd';
  assertEq(frame.evalWithBindings("var i = v; 42;", { v: 'inner' }).return, 42);
};

g.i = 'outer';
log = '';
assertEq(g.eval('debugger; i;'), 'inner');
assertEq(log, 'd');

g.j = 'outer';
log = '';
assertEq(g.eval('debugger; j;'), 'outer');
assertEq(log, 'd');