diff --git a/spec.html b/spec.html
index 3edfa4e171..f47d8b0dbe 100644
--- a/spec.html
+++ b/spec.html
@@ -7388,9 +7388,12 @@
1. If _method_ is not *undefined*, then
1. Let _closure_ be a new Abstract Closure with no parameters that captures _method_ and performs the following steps when called:
1. Let _O_ be the *this* value.
- 1. Perform ? Call(_method_, _O_).
- 1. Return *undefined*.
- 1. NOTE: This function is not observable to user code. It is used to ensure that a Promise returned from a synchronous `@@dispose` method will not be awaited.
+ 1. Let _promiseCapability_ be ! NewPromiseCapability(%Promise%).
+ 1. Let _result_ be Completion(Call(_method_, _O_)).
+ 1. IfAbruptRejectPromise(_result_, _promiseCapability_).
+ 1. Perform ? Call(_promiseCapability_.[[Resolve]], *undefined*, « *undefined* »).
+ 1. Return _promiseCapability_.[[Promise]].
+ 1. NOTE: This function is not observable to user code. It is used to ensure that a Promise returned from a synchronous `@@dispose` method will not be awaited and that any exception thrown will not be thrown synchronously.
1. Return CreateBuiltinFunction(_closure_, 0, *""*, « »).
1. Else,
1. Let _method_ be ? GetMethod(_V_, @@dispose).