« Bugzilla Issues Index

#795 — 11.2.6: semantics of X are like Y but different

In 11.2.6 "Tagged Templates",
under "Runtime Semantics",
it says:
The runtime semantics of production:
CallExpression : CallExpression TemplateLiteral
is identical to that of
MemberExpression: MemberExpression TemplateLiteral
but with evaluation of CallExpression substituted for the evaluation of

Given that the semantics in question is one simple 3-step algorithm,
it might be better to just state it in full (under "Runtime Semantics:

Note that the latter approach is used in two other places where the semantics differ by a single 'CallExpression' vs 'MemberExpression':
11.2 Left-Hand-Side Expressions / Static Semantics: Contains
11.2.3 Function Calls / Runtime Semantics: Evaluation

(On the other hand, the former approach is still used by:
11.2.1 Property Accessors / Runtime Semantics: Evaluation
but there the semantics are a 10-step algorithm.)

corrected in rev 11 editor's draft

in October 26, 2012 release draft