'async function*' does not parse
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 7.1k
- Forks
- 773
- PR merge metrics
- No merged PRs in 30d
Description
Steps to reproduce
esprima.parse('var AsyncGeneratorFunction = Object.getPrototypeOf(async function* () {}).constructor;')
Expected output
A valid syntax tree.
Actual output
Error: Line 1: Unexpected token *
Relevant references
This code is part of a test262 test that can be found at https://github.com/tc39/test262/blob/master/test/built-ins/AsyncGeneratorFunction/extensibility.js. Since the test is not negative, I believe that the code is syntactically correct. It executes in Chrome.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by running the reported esprima.parse call and compare its behavior with the referenced test262 test, built-ins/AsyncGeneratorFunction/extensibility.js. Trace the parser entry point handling async generator syntax. Done means the input is accepted and produces a valid syntax tree instead of an unexpected-token error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 42/100