You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think this is only a bug for named FunctionExpressions. FunctionDeclarations' names are treated as bindings in the enclosing scope. Method, Getter, and Setter can't be recursively called like that, since they don't make a binding.
syg
added a commit
that referenced
this issue
Apr 4, 2018
So, if I read this correctly, we store the information in the parameterScope, right? This would probably deserve a comment in the webidl section.
That's right, and it's mainly because of how the declared names are checked. AssertedParameterScopes' declared names are checked with the BoundNames static semantics in ecma262, instead of VarDeclaredNames or LexicallyDeclaredNames. That happens to match what the Catch production's runtime semantics already does.
The following snippet demonstrate how the name of a
FunctionExpression
can be captured:The same technique would probably work for
Method
,Getter
,Setter
.For the moment, we have nowhere to store this information.
The text was updated successfully, but these errors were encountered: