22 lines
593 B
JavaScript
22 lines
593 B
JavaScript
|
// Copyright 2018 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.
|
||
|
|
||
|
// Flags: --allow-natives-syntax
|
||
|
|
||
|
let arr = [];
|
||
|
// Make the array large enough to trigger re-checking for compaction.
|
||
|
arr[1000] = 0x1234;
|
||
|
|
||
|
arr.__defineGetter__(256, function () {
|
||
|
// Remove the getter so we can compact the array.
|
||
|
delete arr[256];
|
||
|
// Trigger compaction.
|
||
|
arr.unshift(1.1);
|
||
|
});
|
||
|
|
||
|
let results = Object.entries(arr);
|
||
|
%HeapObjectVerify(results);
|
||
|
%HeapObjectVerify(arr);
|
||
|
let str = results.toString();
|