regress-274152.js (1398B)
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 = 274152; 8 var summary = 'Do not ignore unicode format-control characters'; 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 = 'SyntaxError: illegal character'; 23 24 var formatcontrolchars = ['\u200E', 25 '\u0600', 26 '\u0601', 27 '\u0602', 28 '\u0603', 29 '\u06DD', 30 '\u070F']; 31 32 for (var i = 0; i < formatcontrolchars.length; i++) 33 { 34 var char = formatcontrolchars[i]; 35 36 try 37 { 38 eval("hi" + char + "there = 'howdie';"); 39 } 40 catch(ex) 41 { 42 actual = ex + ''; 43 } 44 45 var hex = char.codePointAt(0).toString(16).toUpperCase().padStart(4, '0'); 46 reportCompare(`${expect} U+${hex}`, actual, summary + ': ' + i); 47 } 48 }