Skip to content

Commit

Permalink
Editorial: Move an <emu-note> element
Browse files Browse the repository at this point in the history
PR tc39#1490 (among other things) moved the evaluation semantics for ArrowFunction
from the Evaluation SDO to the NamedEvaluation SDO.
The accompanying <emu-note> should have moved at the same time
(in particular because of the reference to "step 3").
  • Loading branch information
jmdyck committed Apr 23, 2020
1 parent d291d03 commit 2479fb1
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions spec.html
Original file line number Diff line number Diff line change
Expand Up @@ -20123,6 +20123,9 @@ <h1>Runtime Semantics: NamedEvaluation</h1>
1. Set _closure_.[[SourceText]] to the source text matched by |ArrowFunction|.
1. Return _closure_.
</emu-alg>
<emu-note>
<p>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|.</p>
</emu-note>
</emu-clause>

<emu-clause id="sec-arrow-function-definitions-runtime-semantics-evaluation">
Expand All @@ -20131,9 +20134,6 @@ <h1>Runtime Semantics: Evaluation</h1>
<emu-alg>
1. Return the result of performing NamedEvaluation for this |ArrowFunction| with argument *""*.
</emu-alg>
<emu-note>
<p>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|.</p>
</emu-note>
<emu-grammar>ExpressionBody : AssignmentExpression</emu-grammar>
<emu-alg>
1. Let _exprRef_ be the result of evaluating |AssignmentExpression|.
Expand Down

0 comments on commit 2479fb1

Please sign in to comment.