bug1700525.js (343B)
1 // Get a dictionary object. 2 var o = {x: 1, y: 2, z: 3}; 3 delete o.x; 4 5 // Redefine |y| as an accessor. 6 var val = 0; 7 Object.defineProperty(o, "y", {get: () => val, set: v => { val = v; }}); 8 9 // Optimized Object.assign path should fail. 10 Object.assign(o, {x: 3, y: 4, z: 5}); 11 assertEq(val, 4); 12 assertEq(o.x, 3); 13 assertEq(o.y, 4); 14 assertEq(o.z, 5);