diff --git a/spec.html b/spec.html
index dd109028162..95468be1767 100644
--- a/spec.html
+++ b/spec.html
@@ -28961,7 +28961,7 @@
1. If _x_ is not a String, return _x_.
1. Let _evalRealm_ be the current Realm Record.
1. NOTE: In the case of a direct eval, _evalRealm_ is the realm of both the caller of `eval` and of the `eval` function itself.
- 1. Perform ? HostEnsureCanCompileStrings(_evalRealm_, _x_, _direct_).
+ 1. Perform ? HostEnsureCanCompileStrings(_evalRealm_, « », _x_, _direct_).
1. Let _inFunction_ be *false*.
1. Let _inMethod_ be *false*.
1. Let _inDerivedConstructor_ be *false*.
@@ -29024,14 +29024,16 @@
HostEnsureCanCompileStrings (
_calleeRealm_: a Realm Record,
- optional _bodyText_: a String,
- optional _direct_: a Boolean,
+ _paramsStrings_: a List of Strings,
+ _bodyString_: a String,
+ _direct_: a Boolean,
): either a normal completion containing ~unused~ or a throw completion
+
_paramsStrings_ represents the strings that, when using the `Function` constructor, will be concatenated tgether to build the parameters list. _bodyString_ represents the function body or the string passed to an `eval` call.
_direct_ signifies whether the evaluation is a direct eval.
The default implementation of HostEnsureCanCompileStrings is to return NormalCompletion(~unused~).
@@ -30264,22 +30266,20 @@
1. Let _parameterSym_ be the grammar symbol |FormalParameters[+Yield, +Await]|.
1. Let _fallbackProto_ be *"%AsyncGeneratorFunction.prototype%"*.
1. Let _argCount_ be the number of elements in _parameterArgs_.
+ 1. Let _parametersStrings_ be a new empty List.
+ 1. For each element _arg_ of _parameterArgs_, do
+ 1. Append ? ToString(_arg_) to _parametersStrings_.
1. Let _P_ be the empty String.
1. If _argCount_ > 0, then
- 1. Let _firstArg_ be _parameterArgs_[0].
- 1. Set _P_ to ? ToString(_firstArg_).
+ 1. Set _P_ to _parametersStrings_[0].
1. Let _k_ be 1.
1. Repeat, while _k_ < _argCount_,
- 1. Let _nextArg_ be _parameterArgs_[_k_].
- 1. Let _nextArgString_ be ? ToString(_nextArg_).
+ 1. Let _nextArgString_ be _parametersStrings_[_k_].
1. Set _P_ to the string-concatenation of _P_, *","* (a comma), and _nextArgString_.
1. Set _k_ to _k_ + 1.
1. Let _bodyString_ be ? ToString(_bodyArg_).
1. Let _currentRealm_ be the current Realm Record.
- 1. If _argCount_ = 0, then
- 1. Perform ? HostEnsureCanCompileStrings(_currentRealm_, _bodyString_, *false*).
- 1. Else,
- 1. Perform ? HostEnsureCanCompileStrings(_currentRealm_).
+ 1. Perform ? HostEnsureCanCompileStrings(_currentRealm_, _parametersStrings_, _bodyString_, *false*).
1. Let _sourceString_ be the string-concatenation of _prefix_, *" anonymous("*, _P_, 0x000A (LINE FEED), *") {"*, 0x000A (LINE FEED), _bodyString_, 0x000A (LINE FEED), and *"}"*.
1. Let _sourceText_ be StringToCodePoints(_sourceString_).
1. Let _parameters_ be ParseText(StringToCodePoints(_P_), _parameterSym_).