(other.TypeError, () => { Object.getOwnPropertyDescriptor(other.HTMLElement.prototype, "onclick").set.call(notElement, null); });
    assert_throws_js(other.TypeError, () => { Reflect.set(new other.Text("foo"), "data", "foo", notText); });
    assert_throws_js(other.TypeError, () => { new Proxy(other.document, {}).title = ""; });
}, "Cross-realm setter throws when called on incompatible object");

promise_test(async t => {
    const other = await createRealm(t);
    const notDocument = Object.create(other.H