| 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); | 
|  |