- From: Domenic Denicola <notifications@github.com>
- Date: Mon, 06 Jul 2020 14:17:44 -0700
- To: heycam/webidl <webidl@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <heycam/webidl/pull/901/review/443413525@github.com>
@domenic commented on this pull request.
> @@ -11288,7 +11288,18 @@ with the [{{LegacyNoInterfaceObject}}] [=extended attribute=].
then set |proto| to |realm|.\[[Intrinsics]].[[{{%Error.prototype%}}]].
1. Otherwise, set |proto| to |realm|.\[[Intrinsics]].[[{{%Object.prototype%}}]].
1. Assert: <a abstract-op>Type</a>(|proto|) is Object.
- 1. Let |interfaceProtoObj| be [=!=] [$OrdinaryObjectCreate$](|proto|).
+ 1. Let |interfaceProtoObj| be null.
+ 1. If |interface| is declared with the [{{Global}}] [=extended attribute=], or
+ |interface| is in the set of [=inherited interfaces=] of an interface
+ that is declared with the [{{Global}}] [=extended attribute=], then:
+ 1. Set |interfaceProtoObj| to [=!=] [$MakeBasicObject$](« \[[Prototype]], \[[Extensible]] »).
+ 1. Set |interfaceProtoObj|.\[[Prototype]] to |proto|.
+ 1. Set the internal methods of |interfaceProtoObj|
+ which are specific to [=immutable prototype exotic objects=]
+ to the definitions specified in
+ [=ECMA-262 Immutable prototype exotic objects=].
+ 1. Otherwise, set |interfaceProtoObj| to [=!=] [$OrdinaryObjectCreate$](|proto|).
+ 1. Assert: [$Type$](|interfaceProtoObj|) is Object.
Let's remove this assert; it's quite redundant to anyone who's read the previous two steps.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/heycam/webidl/pull/901#pullrequestreview-443413525
Received on Monday, 6 July 2020 21:18:03 UTC