diff --git a/index.bs b/index.bs index 3f52528c..3be098e5 100644 --- a/index.bs +++ b/index.bs @@ -8520,12 +8520,18 @@ is the [=set/intersection=] of the relevant construct's [=own exposure set=] with the the [=host interface=]'s [=exposure set=]. Otherwise, it is the [=host interface=]'s [=exposure set=]. -An [=interface=], [=namespace=], [=interface member=], or [=namespace member=] is -exposed in a given ECMAScript global environment if the -ECMAScript global object implements an interface that is in the construct's [=exposure set=], and either: - -* the [=relevant settings object=] for the ECMAScript global object is a [=secure context=]; or -* the construct is not [=available only in secure contexts=]. +
+ An [=interface=], [=namespace=], or [=member=] |construct| is exposed + in a given [=Realm=] |realm| if the following steps return true: + + 1. If |realm|.\[[GlobalObject]] does not implement an [=interface=] + that is in |construct|'s [=exposure set=], then return false. + 1. If |construct| is [=available in both secure and non-secure contexts=], + then return true. + 1. If the [=relevant settings object=] of |realm|.\[[GlobalObject]] is a [=secure context=], + then return true. + 1. Otherwise, return false. +
Note: Since it is not possible for the [=relevant settings object=] for an ECMAScript global object to change whether it is a