with-initializer-default-statement-list.js (1062B)
1 // |reftest| shell-option(--enable-explicit-resource-management) skip-if(!(this.hasOwnProperty('getBuildConfiguration')&&getBuildConfiguration('explicit-resource-management'))||!xulRuntime.shell) error:SyntaxError -- explicit-resource-management is not enabled unconditionally, requires shell-options 2 // Copyright (C) 2023 Ron Buckton. All rights reserved. 3 // This code is governed by the BSD license found in the LICENSE file. 4 5 /*--- 6 esid: sec-let-const-using-and-await-using-declarations-static-semantics-early-errors 7 description: > 8 await using declarations with initialisers in statement positions: 9 default : StatementList 10 info: | 11 AwaitUsingDeclaration : CoverAwaitExpressionAndAwaitUsingDeclarationHead BindingList ; 12 13 - It is a Syntax Error if AwaitUsingDeclaration is contained directly within the StatementList of either a CaseClause or 14 DefaultClause. 15 16 negative: 17 phase: parse 18 type: SyntaxError 19 features: [explicit-resource-management] 20 ---*/ 21 22 $DONOTEVALUATE(); 23 async function f() { 24 switch (true) { default: await using x = null; } 25 }