| OLD | NEW |
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Flags: --no-legacy-const --harmony-sloppy --harmony-sloppy-let | 5 // Flags: --no-legacy-const --harmony-sloppy --harmony-sloppy-let |
| 6 // Flags: --harmony-sloppy-function --harmony-destructuring-bind | 6 // Flags: --harmony-sloppy-function --harmony-destructuring-bind |
| 7 // Flags: --harmony-rest-parameters | |
| 8 | 7 |
| 9 // Test Annex B 3.3 semantics for functions declared in blocks in sloppy mode. | 8 // Test Annex B 3.3 semantics for functions declared in blocks in sloppy mode. |
| 10 // http://www.ecma-international.org/ecma-262/6.0/#sec-block-level-function-decl
arations-web-legacy-compatibility-semantics | 9 // http://www.ecma-international.org/ecma-262/6.0/#sec-block-level-function-decl
arations-web-legacy-compatibility-semantics |
| 11 | 10 |
| 12 (function overridingLocalFunction() { | 11 (function overridingLocalFunction() { |
| 13 var x = []; | 12 var x = []; |
| 14 assertEquals('function', typeof f); | 13 assertEquals('function', typeof f); |
| 15 function f() { | 14 function f() { |
| 16 x.push(1); | 15 x.push(1); |
| 17 } | 16 } |
| (...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 293 throws = false; | 292 throws = false; |
| 294 try { | 293 try { |
| 295 eval('{ function hoistWhenFrozen() {} }'); | 294 eval('{ function hoistWhenFrozen() {} }'); |
| 296 } catch (e) { | 295 } catch (e) { |
| 297 throws = true; | 296 throws = true; |
| 298 } | 297 } |
| 299 assertFalse(this.hasOwnProperty("hoistWhenFrozen")); | 298 assertFalse(this.hasOwnProperty("hoistWhenFrozen")); |
| 300 assertThrows(() => hoistWhenFrozen, ReferenceError); | 299 assertThrows(() => hoistWhenFrozen, ReferenceError); |
| 301 // Should be assertFalse BUG(v8:4452) | 300 // Should be assertFalse BUG(v8:4452) |
| 302 assertTrue(throws); | 301 assertTrue(throws); |
| OLD | NEW |