// If Array.of tries to overwrite a non-configurable property, it throws a TypeError.

load(libdir + "asserts.js");

function C() {
    Object.defineProperty(this, 0, {value: "v", configurable: false});
}
assertThrowsInstanceOf(() => Array.of.call(C, 1, 2, 3), TypeError);