// Copyright 2019 the V8 project authors. All rights reserved. | |
// Use of this source code is governed by a BSD-style license that can be | |
// found in the LICENSE file. | |
function foo(arg) { | |
var ret = { x: arg }; | |
ret.__defineSetter__("y", function() { }); | |
return ret; | |
} | |
// v1 creates a map with a Smi field, v2 deprecates v1's map. | |
let v1 = foo(10); | |
let v2 = foo(10.5); | |
// Trigger a PrepareForDataProperty on v1, which also triggers an update to | |
// dictionary due to the different accessors on v1 and v2's y property. | |
v1.x = 20.5; |