Skip to content

Commit

Permalink
Limit the special case in the [[Set]] algorithm to [OverrideBuiltins]…
Browse files Browse the repository at this point in the history
… interfaces

This is the case where it makes most sense, since the prototype chain can't
shadow any properties.

This change does not affect normal usage; it is only detectable by messing with
the prototype of the object.

The majority of implementations (Gecko and Chrome) already follow the proposed
change; WebKit follows the existing spec.

Fixes #630.
  • Loading branch information
Ms2ger committed Apr 15, 2019
1 parent df1fc1e commit fb8b38b
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions index.bs
Original file line number Diff line number Diff line change
Expand Up @@ -12534,6 +12534,7 @@ Additionally, [=legacy platform objects=] have internal methods as defined in:
1. [=Invoke the indexed property setter=] with |P| and |V|.
1. Return <emu-val>true</emu-val>.
1. If |O| [=implements=] an interface with a [=named property setter=]
and the [{{OverrideBuiltins}}] [=extended attribute=],
and <a abstract-op>Type</a>(|P|) is String, then:
1. [=Invoke the named property setter=] with |P| and |V|.
1. Return <emu-val>true</emu-val>.
Expand Down

0 comments on commit fb8b38b

Please sign in to comment.