tor-browser

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

formal-parameters-after-reassignment-strict-strict.js (1308B)


      1 'use strict';
      2 // Copyright (C) 2013 the V8 project authors. All rights reserved.
      3 // This code is governed by the BSD license found in the LICENSE file.
      4 /*---
      5 es6id: 25.2
      6 description: >
      7    Formal parameters are valid yield expression operands.
      8 flags: [onlyStrict]
      9 features: [generators]
     10 ---*/
     11 
     12 function* g(a, b, c, d) {
     13  arguments[0] = 32;
     14  arguments[1] = 54;
     15  arguments[2] = 333;
     16  yield a;
     17  yield b;
     18  yield c;
     19  yield d;
     20 }
     21 var iter = g(23, 45, 33);
     22 var result;
     23 
     24 result = iter.next();
     25 assert.sameValue(result.value, 23, 'First result `value`');
     26 assert.sameValue(result.done, false, 'First result `done` flag');
     27 
     28 result = iter.next();
     29 assert.sameValue(result.value, 45, 'Second result `value`');
     30 assert.sameValue(result.done, false, 'Second result `done` flag');
     31 
     32 result = iter.next();
     33 assert.sameValue(result.value, 33, 'Third result `value`');
     34 assert.sameValue(result.done, false, 'Third result `done` flag');
     35 
     36 result = iter.next();
     37 assert.sameValue(
     38  result.value, undefined, 'Fourth result `value` (unspecified parameter)'
     39 );
     40 assert.sameValue(
     41  result.done, false, 'Fourth result `done` flag (unspecified parameter)'
     42 );
     43 
     44 result = iter.next();
     45 assert.sameValue(result.value, undefined, 'Final result `value`');
     46 assert.sameValue(result.done, true, 'Final result `done` flag');
     47 
     48 reportCompare(0, 0);