mirror of
https://github.com/tc39/test262.git
synced 2025-05-15 20:30:31 +02:00
Prohibit ASI between 'let' and 'yield'/'await'
Inspired by https://github.com/tc39/test262/pull/956
This commit is contained in:
parent
6fe9488ec7
commit
dbfca4581d
@ -0,0 +1,22 @@
|
||||
// Copyright (C) 2017 Mozilla Corporation. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Jeff Walden <jwalden+code@mit.edu>
|
||||
esid: sec-let-and-const-declarations
|
||||
description: >
|
||||
`let await` does not permit ASI in between, as `await` is a BindingIdentifier
|
||||
info: >
|
||||
`await` is a perfectly cromulent binding name in any context grammatically, just
|
||||
prohibited by static semantics in some contexts. Therefore ASI can never apply
|
||||
between `let` (where a LexicalDeclaration is permitted) and `await`,
|
||||
so a subsequent `0` where `=` was expected is a syntax error.
|
||||
negative:
|
||||
phase: early
|
||||
type: SyntaxError
|
||||
---*/
|
||||
|
||||
async function f() {
|
||||
let
|
||||
await 0;
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: sec-let-and-const-declarations
|
||||
description: >
|
||||
`let yield` does not permit ASI in between, as `yield` is a BindingIdentifier
|
||||
info: >
|
||||
`yield` is a perfectly cromulent binding name in any context grammatically, just
|
||||
prohibited by static semantics in some contexts. Therefore ASI can never apply
|
||||
between `let` (where a LexicalDeclaration is permitted) and `yield`,
|
||||
so a subsequent `0` where `=` was expected is a syntax error.
|
||||
negative:
|
||||
phase: early
|
||||
type: SyntaxError
|
||||
---*/
|
||||
|
||||
function f() {
|
||||
let
|
||||
yield 0;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user