OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 // | |
5 // Flags: --harmony-scoping | |
6 | 4 |
7 // Test for conflicting variable bindings. | 5 // Test for conflicting variable bindings. |
8 | 6 |
9 "use strict"; | 7 "use strict"; |
10 | 8 |
11 function CheckException(e) { | 9 function CheckException(e) { |
12 var string = e.toString(); | 10 var string = e.toString(); |
13 assertTrue(string.indexOf("has already been declared") >= 0 || | 11 assertTrue(string.indexOf("has already been declared") >= 0 || |
14 string.indexOf("redeclaration") >= 0); | 12 string.indexOf("redeclaration") >= 0); |
15 return 'Conflict'; | 13 return 'Conflict'; |
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 // Test conflicting parameter/var bindings. | 156 // Test conflicting parameter/var bindings. |
159 for (var v = 0; v < varbinds.length; ++v) { | 157 for (var v = 0; v < varbinds.length; ++v) { |
160 TestNoConflict('(function (x) {' + varbinds[v] + '})();'); | 158 TestNoConflict('(function (x) {' + varbinds[v] + '})();'); |
161 } | 159 } |
162 | 160 |
163 // Test conflicting catch/function bindings. | 161 // Test conflicting catch/function bindings. |
164 TestNoConflict('try {} catch(x) {' + funbind + '}'); | 162 TestNoConflict('try {} catch(x) {' + funbind + '}'); |
165 | 163 |
166 // Test conflicting parameter/function bindings. | 164 // Test conflicting parameter/function bindings. |
167 TestNoConflict('(function (x) {' + funbind + '})();'); | 165 TestNoConflict('(function (x) {' + funbind + '})();'); |
OLD | NEW |