teramako (2013-10-19T14:25:39.000Z)
Hi

I believe Object.assign never update the target's [[prototype]]. But current rev19 spec is using Put. So I'm afraid of following case will update the [[prototype]].

var soruce = {};
Object.defineProperty(source, "__proto__", {
    value: { a: "A", b: "B" },
    enumerable: true
});
var target = {};
Object.assign(target, source);
Is this expected result ? and is there a plan to change to DefinePropertyOrThrow from Put ?

Thanks.

-- 
teramako
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20131019/5fe18f13/attachment.html>
domenic at domenicdenicola.com (2013-10-26T03:17:22.832Z)
I believe Object.assign never update the target's [[prototype]]. But current rev19 spec is using Put. So I'm afraid of following case will update the [[prototype]].

```js
var soruce = {};
Object.defineProperty(source, "__proto__", {
    value: { a: "A", b: "B" },
    enumerable: true
});
var target = {};
Object.assign(target, source);
```

Is this expected result ? and is there a plan to change to DefinePropertyOrThrow from Put ?