Checks that restarting every frame on the stack works.

---- Restarting at frame index 0 ----
Paused at (after evaluation):
  console.log('A');
  #debugger;
  return 'Magic value';

Pause stack:
  A:3 (canBeRestarted = true)
  B:8 (canBeRestarted = true)
  C:13 (canBeRestarted = true)
  D:18 (canBeRestarted = true)
  E:22 (canBeRestarted = true)
  F:26 (canBeRestarted = true)

Restarting function "A" ...
Paused at (after restart):
function A() {
  #console.log('A');
  debugger;

Evaluating to: Magic value
Called functions: F,E,D,C,B,A,A

---- Restarting at frame index 1 ----
Paused at (after evaluation):
  console.log('A');
  #debugger;
  return 'Magic value';

Pause stack:
  A:3 (canBeRestarted = true)
  B:8 (canBeRestarted = true)
  C:13 (canBeRestarted = true)
  D:18 (canBeRestarted = true)
  E:22 (canBeRestarted = true)
  F:26 (canBeRestarted = true)

Restarting function "B" ...
Paused at (after restart):
function B(param1, param2) {
  #console.log('B');
  return A();

Evaluating to: Magic value
Called functions: F,E,D,C,B,A,B,A

---- Restarting at frame index 2 ----
Paused at (after evaluation):
  console.log('A');
  #debugger;
  return 'Magic value';

Pause stack:
  A:3 (canBeRestarted = true)
  B:8 (canBeRestarted = true)
  C:13 (canBeRestarted = true)
  D:18 (canBeRestarted = true)
  E:22 (canBeRestarted = true)
  F:26 (canBeRestarted = true)

Restarting function "C" ...
Paused at (after restart):
function C() {
  #console.log('C');
  // Function call with argument adapter is intentional.

Evaluating to: Magic value
Called functions: F,E,D,C,B,A,C,B,A

---- Restarting at frame index 3 ----
Paused at (after evaluation):
  console.log('A');
  #debugger;
  return 'Magic value';

Pause stack:
  A:3 (canBeRestarted = true)
  B:8 (canBeRestarted = true)
  C:13 (canBeRestarted = true)
  D:18 (canBeRestarted = true)
  E:22 (canBeRestarted = true)
  F:26 (canBeRestarted = true)

Restarting function "D" ...
Paused at (after restart):
function D() {
  #console.log('D');
  // Function call with argument adapter is intentional.

Evaluating to: Magic value
Called functions: F,E,D,C,B,A,D,C,B,A

---- Restarting at frame index 4 ----
Paused at (after evaluation):
  console.log('A');
  #debugger;
  return 'Magic value';

Pause stack:
  A:3 (canBeRestarted = true)
  B:8 (canBeRestarted = true)
  C:13 (canBeRestarted = true)
  D:18 (canBeRestarted = true)
  E:22 (canBeRestarted = true)
  F:26 (canBeRestarted = true)

Restarting function "E" ...
Paused at (after restart):
function E() {
  #console.log('E');
  return D();

Evaluating to: Magic value
Called functions: F,E,D,C,B,A,E,D,C,B,A

---- Restarting at frame index 5 ----
Paused at (after evaluation):
  console.log('A');
  #debugger;
  return 'Magic value';

Pause stack:
  A:3 (canBeRestarted = true)
  B:8 (canBeRestarted = true)
  C:13 (canBeRestarted = true)
  D:18 (canBeRestarted = true)
  E:22 (canBeRestarted = true)
  F:26 (canBeRestarted = true)

Restarting function "F" ...
Paused at (after restart):
function F() {
  #console.log('F');
  return E();

Evaluating to: Magic value
Called functions: F,E,D,C,B,A,F,E,D,C,B,A
