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: --strong-mode | 5 // Flags: --strong-mode --harmony-arrow-functions |
6 // Flags: --harmony-classes --harmony-arrow-functions | |
7 | 6 |
8 'use strong'; | 7 'use strong'; |
9 | 8 |
10 class C {} | 9 class C {} |
11 | 10 |
12 let indirect_eval = eval; | 11 let indirect_eval = eval; |
13 | 12 |
14 function assertTypeError(script) { assertThrows(script, TypeError) } | 13 function assertTypeError(script) { assertThrows(script, TypeError) } |
15 function assertSyntaxError(script) { assertThrows(script, SyntaxError) } | 14 function assertSyntaxError(script) { assertThrows(script, SyntaxError) } |
16 function assertReferenceError(script) { assertThrows(script, ReferenceError) } | 15 function assertReferenceError(script) { assertThrows(script, ReferenceError) } |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
110 | 109 |
111 (function NoNestedThis() { | 110 (function NoNestedThis() { |
112 assertSyntaxError(constructor("(this.a = 0);")); | 111 assertSyntaxError(constructor("(this.a = 0);")); |
113 assertSyntaxError(constructor("{ this.a = 0; }")); | 112 assertSyntaxError(constructor("{ this.a = 0; }")); |
114 assertSyntaxError(constructor("if (0) this.a = 0;")); | 113 assertSyntaxError(constructor("if (0) this.a = 0;")); |
115 // TODO(rossberg): this does not handle arrow functions yet. | 114 // TODO(rossberg): this does not handle arrow functions yet. |
116 // assertSyntaxError(constructor("() => this.a = 0;")); | 115 // assertSyntaxError(constructor("() => this.a = 0;")); |
117 // assertSyntaxError(constructor("() => { this.a = 0; }")); | 116 // assertSyntaxError(constructor("() => { this.a = 0; }")); |
118 assertSyntaxError(constructor("label: this.a = 0;")); | 117 assertSyntaxError(constructor("label: this.a = 0;")); |
119 })(); | 118 })(); |
OLD | NEW |