tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

proto-from-ctor-realm.js (1038B)


      1 // Copyright (C) 2016 the V8 project authors. All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 /*---
      4 esid: sec-array.from
      5 es6id: 22.1.2.1
      6 description: Default [[Prototype]] value derived from realm of the constructor
      7 info: |
      8    [...]
      9    5. If usingIterator is not undefined, then
     10       a. If IsConstructor(C) is true, then
     11          i. Let A be ? Construct(C).
     12    [...]
     13 
     14    9.1.14 GetPrototypeFromConstructor
     15 
     16    [...]
     17    3. Let proto be ? Get(constructor, "prototype").
     18    4. If Type(proto) is not Object, then
     19       a. Let realm be ? GetFunctionRealm(constructor).
     20       b. Let proto be realm's intrinsic object named intrinsicDefaultProto.
     21    [...]
     22 features: [cross-realm]
     23 ---*/
     24 
     25 var other = $262.createRealm().global;
     26 var C = new other.Function();
     27 C.prototype = null;
     28 
     29 var a = Array.from.call(C, []);
     30 
     31 assert.sameValue(
     32  Object.getPrototypeOf(a),
     33  other.Object.prototype,
     34  'Object.getPrototypeOf(Array.from.call(C, [])) returns other.Object.prototype'
     35 );
     36 
     37 reportCompare(0, 0);