| Index: test/mjsunit/regress/regress-crbug-609046.js
|
| diff --git a/test/mjsunit/regress/regress-crbug-605581.js b/test/mjsunit/regress/regress-crbug-609046.js
|
| similarity index 52%
|
| copy from test/mjsunit/regress/regress-crbug-605581.js
|
| copy to test/mjsunit/regress/regress-crbug-609046.js
|
| index 0f1daabead95a6357503f418c5b46c710ba6b99b..10b63af3e33feba396f4466098025bef688fd213 100644
|
| --- a/test/mjsunit/regress/regress-crbug-605581.js
|
| +++ b/test/mjsunit/regress/regress-crbug-609046.js
|
| @@ -4,13 +4,21 @@
|
|
|
| // Flags: --expose-debug-as debug
|
|
|
| +// Test that hidden scopes are correctly walked in the scope chain.
|
| +
|
| var Debug = debug.Debug;
|
| var exception = null;
|
| +var delegate = null;
|
| +var done = false;
|
|
|
| function listener(event, exec_state, event_data, data) {
|
| if (event != Debug.DebugEvent.Break) return;
|
| try {
|
| - assertThrows(() => exec_state.frame(0).evaluate("bar.baz"), ReferenceError);
|
| + assertEquals([ debug.ScopeType.Block,
|
| + debug.ScopeType.Script,
|
| + debug.ScopeType.Global ],
|
| + exec_state.frame(0).allScopes().map(s => s.scopeType()));
|
| + done = true;
|
| } catch (e) {
|
| exception = e;
|
| }
|
| @@ -18,11 +26,11 @@ function listener(event, exec_state, event_data, data) {
|
|
|
| Debug.setListener(listener);
|
|
|
| -(function() {
|
| - debugger; // bar is still in TDZ at this point.
|
| - let bar = 1;
|
| - (x => bar); // force bar to be context-allocated.
|
| -})();
|
| +for(let a = 0; a < 3; a++) {
|
| + debugger;
|
| + eval(); // Force context-allocation of everything.
|
| +}
|
|
|
| Debug.setListener(null);
|
| assertNull(exception);
|
| +assertTrue(done);
|
|
|