tor-browser

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

not-a-constructor.js (1256B)


      1 // |reftest| skip-if(!this.hasOwnProperty('Atomics')||!this.hasOwnProperty('SharedArrayBuffer')||(this.hasOwnProperty('getBuildConfiguration')&&getBuildConfiguration('arm64-simulator'))) -- Atomics,SharedArrayBuffer is not enabled unconditionally, ARM64 Simulator cannot emulate atomics
      2 // Copyright (C) 2020 Rick Waldron. All rights reserved.
      3 // This code is governed by the BSD license found in the LICENSE file.
      4 
      5 /*---
      6 esid: sec-ecmascript-standard-built-in-objects
      7 description: >
      8  Atomics.or does not implement [[Construct]], is not new-able
      9 info: |
     10  ECMAScript Function Objects
     11 
     12  Built-in function objects that are not identified as constructors do not
     13  implement the [[Construct]] internal method unless otherwise specified in
     14  the description of a particular function.
     15 
     16  sec-evaluatenew
     17 
     18  ...
     19  7. If IsConstructor(constructor) is false, throw a TypeError exception.
     20  ...
     21 includes: [isConstructor.js]
     22 features: [Reflect.construct, Atomics, arrow-function, TypedArray, SharedArrayBuffer]
     23 ---*/
     24 
     25 assert.sameValue(isConstructor(Atomics.or), false, 'isConstructor(Atomics.or) must return false');
     26 
     27 assert.throws(TypeError, () => {
     28  new Atomics.or(new Int32Array(new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT)));
     29 });
     30 
     31 
     32 reportCompare(0, 0);