keyed-store-generic.js 687 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
// Copyright 2017 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 --no-stress-opt

function f(a, i, v) { a[i] = v; }
f("make it generic", 0, 0);

(function TestIsConcatSpreadableProtector() {
  var o = {length: 1, '0': 99};
  %OptimizeObjectForAddingMultipleProperties(o, 0);
  f(o, Symbol.isConcatSpreadable, true);
  assertEquals([99], [].concat(o));
})();

(function TestSpeciesProtector() {
  function MyArray() {}
19
  assertTrue(%ArraySpeciesProtector());
20
  f(Array.prototype, "constructor", MyArray);
21
  assertFalse(%ArraySpeciesProtector());
22
})();