michael@0: /* michael@0: * Any copyright is dedicated to the Public Domain. michael@0: * http://creativecommons.org/licenses/publicdomain/ michael@0: */ michael@0: michael@0: //----------------------------------------------------------------------------- michael@0: var BUGNUMBER = 663331; michael@0: var summary = michael@0: "U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR must match the " + michael@0: "LineTerminator production when parsing code"; michael@0: michael@0: print(BUGNUMBER + ": " + summary); michael@0: michael@0: /************** michael@0: * BEGIN TEST * michael@0: **************/ michael@0: michael@0: var hidden = 17; michael@0: var assigned; michael@0: michael@0: assigned = 42; michael@0: assertEq(eval('"use strict"; var hidden\u2028assigned = 5; typeof hidden'), michael@0: "undefined"); michael@0: assertEq(assigned, 5); michael@0: michael@0: assigned = 42; michael@0: function t1() michael@0: { michael@0: assertEq(eval('var hidden\u2028assigned = 5; typeof hidden'), "undefined"); michael@0: assertEq(assigned, 5); michael@0: } michael@0: t1(); michael@0: michael@0: assigned = 42; michael@0: assertEq(eval('"use strict"; var hidden\u2029assigned = 5; typeof hidden'), michael@0: "undefined"); michael@0: assertEq(assigned, 5); michael@0: michael@0: assigned = 42; michael@0: function t2() michael@0: { michael@0: assertEq(eval('var hidden\u2029assigned = 5; typeof hidden'), "undefined"); michael@0: assertEq(assigned, 5); michael@0: } michael@0: t2(); michael@0: michael@0: /******************************************************************************/ michael@0: michael@0: reportCompare(true, true); michael@0: michael@0: print("All tests passed!");