- From: Alexey Shvayka <notifications@github.com>
- Date: Thu, 20 May 2021 11:36:32 -0700
- To: heycam/webidl <webidl@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
Received on Thursday, 20 May 2021 18:36:44 UTC
Thank you @yuki3, it's a great fix that covers all `[[Set]]` edge cases (like setters upper in prototype chain). > IIUC, `[[Set]]` in this case will fallback to `[[DefineOwnProperty]]` and the property won't be defined. That's right, per step 3 of [`OrdinarySet`](https://tc39.es/ecma262/#sec-ordinarysetwithowndescriptor). --- I've decided not to pursue this change: if we make `@@toStringTag` non-configurable, named properties' `[[DefineOwnProperty]]` would still need to be updated to accept descriptors like: * `{}` * `{ value: "WindowProperties" }` * `{ configurable: false }` And even if we fix symbols, `[[DefineOwnProperty]]` would still remain weird (IMO) for existing string properties, while `[[Delete]]` would still fail for non-existing string properties (in perfect world, it shouldn't). Instead, let's reach interop with the current spec. I've updated the tests and reported bugs on remaining minor issues: * https://bugzilla.mozilla.org/show_bug.cgi?id=1712180 * https://bugs.chromium.org/p/chromium/issues/detail?id=1211447 -- 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/963#issuecomment-845368437
Received on Thursday, 20 May 2021 18:36:44 UTC