| Index: test/mjsunit/harmony/block-eval-var-over-legacy-const.js
|
| diff --git a/test/mjsunit/harmony/block-eval-var-over-legacy-const.js b/test/mjsunit/harmony/block-eval-var-over-legacy-const.js
|
| deleted file mode 100644
|
| index fc4d22fead4027f5e15390c24c01d314d54bec6e..0000000000000000000000000000000000000000
|
| --- a/test/mjsunit/harmony/block-eval-var-over-legacy-const.js
|
| +++ /dev/null
|
| @@ -1,84 +0,0 @@
|
| -// Copyright 2015 the V8 project authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -// Flags: --harmony-sloppy --harmony-sloppy-let --harmony-sloppy-function
|
| -
|
| -// Var-let conflict in a function throws, even if the var is in an eval
|
| -
|
| -// Throws at the top level of a function
|
| -assertThrows(function() {
|
| - let x = 1;
|
| - eval('const x = 2');
|
| -}, TypeError);
|
| -
|
| -// If the eval is in its own block scope, throws
|
| -assertThrows(function() {
|
| - let y = 1;
|
| - { eval('const y = 2'); }
|
| -}, TypeError);
|
| -
|
| -// If the let is in its own block scope, with the eval, throws
|
| -assertThrows(function() {
|
| - {
|
| - let x = 1;
|
| - eval('const x = 2');
|
| - }
|
| -}, TypeError);
|
| -
|
| -// Legal if the let is no longer visible
|
| -assertDoesNotThrow(function() {
|
| - {
|
| - let x = 1;
|
| - }
|
| - eval('const x = 2');
|
| -});
|
| -
|
| -// In global scope
|
| -let caught = false;
|
| -try {
|
| - let z = 1;
|
| - eval('const z = 2');
|
| -} catch (e) {
|
| - caught = true;
|
| -}
|
| -assertTrue(caught);
|
| -
|
| -// Let declarations beyond a function boundary don't conflict
|
| -caught = false;
|
| -try {
|
| - let a = 1;
|
| - (function() {
|
| - eval('const a');
|
| - })();
|
| -} catch (e) {
|
| - caught = true;
|
| -}
|
| -assertFalse(caught);
|
| -
|
| -// var across with doesn't conflict
|
| -caught = false;
|
| -try {
|
| - (function() {
|
| - with ({x: 1}) {
|
| - eval("const x = 2;");
|
| - }
|
| - })();
|
| -} catch (e) {
|
| - caught = true;
|
| -}
|
| -assertFalse(caught);
|
| -
|
| -// var can still conflict with let across a with
|
| -caught = false;
|
| -try {
|
| - (function() {
|
| - let x;
|
| - with ({x: 1}) {
|
| - eval("const x = 2;");
|
| - }
|
| - })();
|
| -} catch (e) {
|
| - caught = true;
|
| -}
|
| -assertTrue(caught);
|
|
|