strict-maybe-assign-outer.js (559B)
1 /* 2 * Any copyright is dedicated to the Public Domain. 3 * http://creativecommons.org/licenses/publicdomain/ 4 */ 5 load(libdir + 'array-compare.js'); 6 7 var obj = {}; 8 9 function strictMaybeAssignOuterParam(p) 10 { 11 "use strict"; 12 function inner() { p = 17; } 13 return arguments; 14 } 15 16 var a1, a2, a3; 17 for (var i = 0; i < 5; i++) 18 { 19 a1 = strictMaybeAssignOuterParam(); 20 a2 = strictMaybeAssignOuterParam(17); 21 a3 = strictMaybeAssignOuterParam(obj); 22 } 23 24 assertEq(arraysEqual(a1, []), true); 25 assertEq(arraysEqual(a2, [17]), true); 26 assertEq(arraysEqual(a3, [obj]), true);