Open
Description
I suspect this is a spec oversight, hence why I'm filing this as a bug.
- https://tc39.es/ecma262/#prod-ComputedPropertyName:
[ AssignmentExpression[+In, ?Yield, ?Await] ]
- https://tc39.es/ecma262/#prod-MemberExpression:
MemberExpression[?Yield, ?Await] [ Expression[+In, ?Yield, ?Await] ]
- https://tc39.es/ecma262/#prod-SuperProperty:
super [ Expression[+In, ?Yield, ?Await] ]
- https://tc39.es/ecma262/#prod-CallExpression:
CallExpression[?Yield, ?Await] [ Expression[+In, ?Yield, ?Await] ]
- https://tc39.es/ecma262/#prod-OptionalChain:
?. [ Expression[+In, ?Yield, ?Await] ]
One of those is not like the others, and it's generated some confusion over in the ES Discourse. Considering you can't even destructure anything at that location in parameters, it feels like a spec oversight in ES2015 that's been there ever since.