test262/test/language/statements/await-using/syntax/await-using-not-allowed-at-top-level-of-eval.js
Ron Buckton 134a8eafba
[explicit-resource-management] Add remaining tests specific to await using statement syntax (#4481)
* Add remaining tests specific to await-using statement syntax

* PR feedback and minor fixes due to banning 'await using' in switch case/default

* Additional updates

* Fix comment formatting

* Fix esid

* Fix test implementation

* Fix error type in test
2025-11-04 09:04:25 -08:00

25 lines
961 B
JavaScript

// Copyright (C) 2023 Ron Buckton. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-let-const-using-and-await-using-declarations-static-semantics-early-errors
description: >
await using declarations not allowed at the top level of eval. Note that Eval parses text using the Script goal.
info: |
AwaitUsingDeclaration : CoverAwaitExpressionAndAwaitUsingDeclarationHead BindingList ;
- It is a Syntax Error if the goal symbol is Script and UsingDeclaration is not contained, either directly or
indirectly, within a Block, ForStatement, ForInOfStatement, FunctionBody, GeneratorBody,
AsyncGeneratorBody, AsyncFunctionBody, ClassStaticBlockBody, or ClassBody.
flags: [async]
includes: [asyncHelpers.js]
features: [explicit-resource-management]
---*/
asyncTest(async function () {
await assert.throwsAsync(SyntaxError, async function () {
eval('await using x = null;')
});
});