-
Notifications
You must be signed in to change notification settings - Fork 28
Fix spec #5
Conversation
…e is properly resolved, and still yields a promise for `argument`.
09be010
to
ecbbf91
Compare
ad71038
to
e325825
Compare
@domenic any thoughts on this solution? |
1. let _handlerResult_ be Call(_handler_, *undefined*, « »). | ||
1. If _handlerResult_ is not an abrupt completion, then | ||
1. Let _handlerPromise_ be ? PromiseResolve(%Promise%, _handlerResult_.[[Value]]). | ||
1. Let _argumentThunk_ be equivalent to a function that returns _argument_. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
neat, but can this be described like this without it being considered a layering violation? (I honestly don't know) @domenic ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This text is identical to text that used to be in the spec prior to tc39/ecma262#584 so I'm pretty sure it's OK. Not sure what you mean by "layering violation" tho?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems good then, it just seemed like it was describing language semantics with those semantics. But if its based on prior art we are likely good.
@@ -356,7 +356,7 @@ <h1 class="title">Promise.prototype.finally</h1> | |||
</emu-alg> | |||
</emu-clause> | |||
|
|||
<!-- es6num="25.4.1.8" --> | |||
<!-- es6num="25.4.4.5" --> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@bterlson this seems to have changed between when I initially wrote this PR and now. Was this intentional? I thought "es6num" values were supposed to stay constant forever?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's 25.4.4.5 in the spec now, so presumably this change is fine. Not sure where 25.4.1.8 came from. It should remain unchanged from ES6.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unless I copy-paste-errored, 25.4.1.8 is what it was when I first copied the spec steps for Promise.resolve
and started writing this PR. Hopefully it's unchanged and I just messed it up :-)
Attempt to fix #2 and close #1.
Spec HTML viewable here
This attempts to fix the spec by: