Tests breakable locations in comma expressions.

Running test: testBreakLocations

function testFunction() {
  |C|foo(), |C|foo(), |C|foo();
  |_|return |C|bar(), |C|bar();|R|
}

function foo() {
  |_|return |C|baz(), |C|baz();|R|
}

function bar() {
  |_|return |C|foo(),
         1 |_|+ |C|foo(),
         2 |_|+ |C|foo();|R|
}

const baz = |_|() => |_|0|R|;
|R|


Running test: testStepping
Execution paused in testFunction:
function testFunction() {
  #foo(), foo(), foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  #return baz(), baz();
}

Called from testFunction:
function testFunction() {
  #foo(), foo(), foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  return baz(), #baz();
}

Called from testFunction:
function testFunction() {
  #foo(), foo(), foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  return baz(), baz();#
}

Called from testFunction:
function testFunction() {
  #foo(), foo(), foo();
  return bar(), bar();

Execution paused in testFunction:
function testFunction() {
  foo(), #foo(), foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  #return baz(), baz();
}

Called from testFunction:
function testFunction() {
  foo(), #foo(), foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  return baz(), #baz();
}

Called from testFunction:
function testFunction() {
  foo(), #foo(), foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  return baz(), baz();#
}

Called from testFunction:
function testFunction() {
  foo(), #foo(), foo();
  return bar(), bar();

Execution paused in testFunction:
function testFunction() {
  foo(), foo(), #foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  #return baz(), baz();
}

Called from testFunction:
function testFunction() {
  foo(), foo(), #foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  return baz(), #baz();
}

Called from testFunction:
function testFunction() {
  foo(), foo(), #foo();
  return bar(), bar();

Execution paused in foo:
function foo() {
  return baz(), baz();#
}

Called from testFunction:
function testFunction() {
  foo(), foo(), #foo();
  return bar(), bar();

Execution paused in testFunction:
  foo(), foo(), foo();
  #return bar(), bar();
}

Execution paused in bar:
function bar() {
  #return foo(),
         1 + foo(),

Called from testFunction:
  foo(), foo(), foo();
  return #bar(), bar();
}

Execution paused in bar:
  return foo(),
         1 #+ foo(),
         2 + foo();

Called from testFunction:
  foo(), foo(), foo();
  return #bar(), bar();
}

Execution paused in bar:
         1 + foo(),
         2 #+ foo();
}

Called from testFunction:
  foo(), foo(), foo();
  return #bar(), bar();
}

Execution paused in bar:
         1 + foo(),
         2 + foo();#
}

Called from testFunction:
  foo(), foo(), foo();
  return #bar(), bar();
}

Execution paused in testFunction:
  foo(), foo(), foo();
  return bar(), #bar();
}

Execution paused in bar:
function bar() {
  #return foo(),
         1 + foo(),

Called from testFunction:
  foo(), foo(), foo();
  return bar(), #bar();
}

Execution paused in bar:
  return foo(),
         1 #+ foo(),
         2 + foo();

Called from testFunction:
  foo(), foo(), foo();
  return bar(), #bar();
}

Execution paused in bar:
         1 + foo(),
         2 #+ foo();
}

Called from testFunction:
  foo(), foo(), foo();
  return bar(), #bar();
}

Execution paused in bar:
         1 + foo(),
         2 + foo();#
}

Called from testFunction:
  foo(), foo(), foo();
  return bar(), #bar();
}

Execution paused in testFunction:
  foo(), foo(), foo();
  return bar(), bar();#
}

Resuming and finishing...
