diff options
Diffstat (limited to 'js/src/tests/test262/language/module-code/top-level-await/syntax/early-does-not-propagate-to-fn-declaration-params.js')
-rw-r--r-- | js/src/tests/test262/language/module-code/top-level-await/syntax/early-does-not-propagate-to-fn-declaration-params.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/module-code/top-level-await/syntax/early-does-not-propagate-to-fn-declaration-params.js b/js/src/tests/test262/language/module-code/top-level-await/syntax/early-does-not-propagate-to-fn-declaration-params.js new file mode 100644 index 0000000000..ed59aabea1 --- /dev/null +++ b/js/src/tests/test262/language/module-code/top-level-await/syntax/early-does-not-propagate-to-fn-declaration-params.js @@ -0,0 +1,41 @@ +// |reftest| error:SyntaxError module +// Copyright (C) 2019 Leo Balter. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +description: > + The Await capability does not propagate to the parameters of a function declaration +info: | + ModuleItem: + StatementListItem[~Yield, +Await, ~Return] + + StatementListItem[Yield, Await, Return]: + Statement[?Yield, ?Await, ?Return] + Declaration[?Yield, ?Await] + + Declaration[Yield, Await]: + HoistableDeclaration[?Yield, ?Await, ~Default] + ClassDeclaration[?Yield, ?Await, ~Default] + LexicalDeclaration[+In, ?Yield, ?Await] + + HoistableDeclaration[Yield, Await, Default]: + FunctionDeclaration[?Yield, ?Await, ?Default] + GeneratorDeclaration[?Yield, ?Await, ?Default] + AsyncFunctionDeclaration[?Yield, ?Await, ?Default] + AsyncGeneratorDeclaration[?Yield, ?Await, ?Default] + + FunctionDeclaration[Yield, Await, Default]: + function BindingIdentifier[?Yield, ?Await] ( FormalParameters[~Yield, ~Await] ) { FunctionBody[~Yield, ~Await] } +negative: + phase: parse + type: SyntaxError +esid: prod-ModuleItem +flags: [module] +features: [top-level-await] +---*/ + +$DONOTEVALUATE(); + +function fn(x = await 1) { + return x; +} |