Skip to content
Snippets Groups Projects
Commit c8574edd authored by Rick Waldron's avatar Rick Waldron Committed by GitHub
Browse files

Merge pull request #968 from littledan/no-let-yield-await-asi

Tests for PR to Prohibit ASI between 'let' and 'yield'/'await'
parents 2a0da2ef 799568fe
No related branches found
No related tags found
No related merge requests found
// 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;
}
// 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
---*/
function f() {
let
await 0;
}
// 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;
}
// 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;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment