blob: 32a976e01a3aa41ac97f7dcca89b8333a601fdfc [file]
//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------
//
// Display __proto__ or [prototype]
//
Object.keys(this).forEach(function (p) {
Object.defineProperty(this, p, { enumerable: false });
});
Object.defineProperty(this, "__saved__proto__desc", {
value: Object.getOwnPropertyDescriptor(Object.prototype, "__proto__"),
enumerable: false,
});
(function () {
arguments = null;
this; /**bp:locals(2)**/
Object.defineProperty(Object.prototype, "__proto__", { get: function () { } });
this; /**bp:locals(2)**/
Object.defineProperty(Object.prototype, "__proto__", { get: __saved__proto__desc.get });
this; /**bp:locals(2)**/
Object.defineProperty(Object.prototype, "__proto__", { set: function () { } });
this; /**bp:locals(2)**/
Object.defineProperty(Object.prototype, "__proto__", { set: __saved__proto__desc.set });
this; /**bp:locals(2)**/
Object.defineProperty(Object.prototype, "__proto__", {
get: function () { return __saved__proto__desc.get.apply(this); },
set: function (p) { return __saved__proto__desc.set.apply(this, [p]); },
});
this.__proto__ = { pp2: 2 };
this; /**bp:locals(2)**/
Object.defineProperty(Object.prototype, "__proto__", { value: 123 });
this; /**bp:locals(3)**/
Object.defineProperty(Object.prototype, "__proto__", __saved__proto__desc);
this; /**bp:locals(2)**/
}).apply({ thisp: 1, __proto__: { protop: 123 } });
WScript.Echo("pass");