LibJS: Use ToPropertyKey AO for computed member expression value

This ensures the value goes through the regular ToPrimitive mechanism,
which PropertyKey::from_value() bypasses. This is relevant for objects
with a @@toPrimitive method, for example.
Also enables one skipped test in delete-basic.js, which now passes.
This commit is contained in:
Linus Groh 2022-12-10 01:08:34 +00:00
commit 5ee1758f46
Notes: sideshowbarker 2024-07-17 03:34:35 +09:00
2 changed files with 2 additions and 3 deletions

View file

@ -166,8 +166,7 @@ test("deleting an object computed property coerces the object to a property key"
expect(called).toBeTrue();
});
// FIXME: This currently does not work as it trys to coerce the returned Symbol to a String. I'm not sure why this is.
test.skip("deleting a symbol returned by @@toPrimitive", () => {
test("deleting a symbol returned by @@toPrimitive", () => {
let called = false;
const obj = { [Symbol.toStringTag]: "hello world" };