@@ -11374,6 +11374,9 @@ with the [{{LegacyNoInterfaceObject}}] [=extended attribute=].
11374
11374
to the definitions specified in
11375
11375
[=ECMA-262 Immutable prototype exotic objects=].
11376
11376
1. Otherwise, set |interfaceProtoObj| to [=!=] [$OrdinaryObjectCreate$](|proto|).
11377
+ 1. If the [{{LegacyNoInterfaceObject}}] [=extended attribute=] was not specified on |interface|, then:
11378
+ 1. Let |constructor| be the [=interface object=] of |interface| in |realm|.
11379
+ 1. Perform [=!=] [$CreateMethodProperty$](|interfaceProtoObj|, "<code>constructor</code>", |constructor|).
11377
11380
1. If |interface| has any [=member=] declared with the [{{Unscopable}}] [=extended attribute=],
11378
11381
then:
11379
11382
@@ -11397,12 +11400,6 @@ with the [{{LegacyNoInterfaceObject}}] [=extended attribute=].
11397
11400
1. [=Define the asynchronous iteration methods=] of |interface| on |interfaceProtoObj|
11398
11401
given |realm|.
11399
11402
1. [=Define the constants=] of |interface| on |interfaceProtoObj| given |realm|.
11400
- 1. If the [{{LegacyNoInterfaceObject}}] [=extended attribute=] was not specified on |interface|, then:
11401
- 1. Let |constructor| be the [=interface object=] of |interface| in |realm|.
11402
- 1. Let |desc| be the PropertyDescriptor{\[[Writable]]: <emu-val>true</emu-val>,
11403
- \[[Enumerable]]: <emu-val>false</emu-val>, \[[Configurable]]: <emu-val>true</emu-val>,
11404
- \[[Value]]: |constructor|}.
11405
- 1. Perform [=!=] <a abstract-op>DefinePropertyOrThrow</a>(|interfaceProtoObj|, "<code>constructor</code>", |desc|).
11406
11403
1. Return |interfaceProtoObj|.
11407
11404
</div>
11408
11405
0 commit comments