regress-384991.js (1298B)
1 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 //----------------------------------------------------------------------------- 7 var BUGNUMBER = 384991; 8 var summary = ' w(yield) should not cause "yield expression must be parenthesized" syntax error'; 9 var actual = ''; 10 var expect = ''; 11 12 13 //----------------------------------------------------------------------------- 14 test(); 15 //----------------------------------------------------------------------------- 16 17 function test() 18 { 19 printBugNumber(BUGNUMBER); 20 printStatus (summary); 21 22 expect = 'No Error'; 23 24 try 25 { 26 actual = 'No Error'; 27 (function*() { w((yield)); }); 28 } 29 catch(ex) 30 { 31 actual = ex + ''; 32 } 33 reportCompare(expect, actual, summary + ': 1'); 34 35 try 36 { 37 actual = 'No Error'; 38 (function*() { w(1 ? yield : 0); }); 39 } 40 catch(ex) 41 { 42 actual = ex + ''; 43 } 44 reportCompare(expect, actual, summary + ': 2'); 45 46 try 47 { 48 actual = 'No Error'; 49 (function* () { f(x = yield); const x = undefined; }); 50 } 51 catch(ex) 52 { 53 actual = ex + ''; 54 } 55 reportCompare(expect, actual, summary + ': 3'); 56 }