From 2479fb1461639145e0ad8c97ffef0df86b379102 Mon Sep 17 00:00:00 2001 From: Michael Dyck Date: Wed, 22 Apr 2020 22:28:17 -0400 Subject: [PATCH] Editorial: Move an element PR #1490 (among other things) moved the evaluation semantics for ArrowFunction from the Evaluation SDO to the NamedEvaluation SDO. The accompanying should have moved at the same time (in particular because of the reference to "step 3"). --- spec.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/spec.html b/spec.html index 72fc756079..bd58ebdcea 100644 --- a/spec.html +++ b/spec.html @@ -20123,6 +20123,9 @@

Runtime Semantics: NamedEvaluation

1. Set _closure_.[[SourceText]] to the source text matched by |ArrowFunction|. 1. Return _closure_. + +

An |ArrowFunction| does not define local bindings for `arguments`, `super`, `this`, or `new.target`. Any reference to `arguments`, `super`, `this`, or `new.target` within an |ArrowFunction| must resolve to a binding in a lexically enclosing environment. Typically this will be the Function Environment of an immediately enclosing function. Even though an |ArrowFunction| may contain references to `super`, the function object created in step 3 is not made into a method by performing MakeMethod. An |ArrowFunction| that references `super` is always contained within a non-|ArrowFunction| and the necessary state to implement `super` is accessible via the _scope_ that is captured by the function object of the |ArrowFunction|.

+
@@ -20131,9 +20134,6 @@

Runtime Semantics: Evaluation

1. Return the result of performing NamedEvaluation for this |ArrowFunction| with argument *""*. - -

An |ArrowFunction| does not define local bindings for `arguments`, `super`, `this`, or `new.target`. Any reference to `arguments`, `super`, `this`, or `new.target` within an |ArrowFunction| must resolve to a binding in a lexically enclosing environment. Typically this will be the Function Environment of an immediately enclosing function. Even though an |ArrowFunction| may contain references to `super`, the function object created in step 3 is not made into a method by performing MakeMethod. An |ArrowFunction| that references `super` is always contained within a non-|ArrowFunction| and the necessary state to implement `super` is accessible via the _scope_ that is captured by the function object of the |ArrowFunction|.

-
ExpressionBody : AssignmentExpression 1. Let _exprRef_ be the result of evaluating |AssignmentExpression|.