Imported Upstream version 1.0.0
[platform/upstream/js.git] / js / src / jit-test / tests / arguments / strict-maybe-assign-outer.js
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);