diff options
Diffstat (limited to 'js/src/jit-test/tests/arguments/strict-assign-outer-param.js')
-rw-r--r-- | js/src/jit-test/tests/arguments/strict-assign-outer-param.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/arguments/strict-assign-outer-param.js b/js/src/jit-test/tests/arguments/strict-assign-outer-param.js new file mode 100644 index 000000000..f6e4f4767 --- /dev/null +++ b/js/src/jit-test/tests/arguments/strict-assign-outer-param.js @@ -0,0 +1,27 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ +load(libdir + 'array-compare.js'); + +var obj = {}; + +function strictAssignOuterParam(p) +{ + "use strict"; + function inner() { p = 17; } + inner(); + return arguments; +} + +var a1, a2, a3; +for (var i = 0; i < 5; i++) +{ + a1 = strictAssignOuterParam(); + a2 = strictAssignOuterParam(42); + a3 = strictAssignOuterParam(obj); +} + +assertEq(arraysEqual(a1, []), true); +assertEq(arraysEqual(a2, [42]), true); +assertEq(arraysEqual(a3, [obj]), true); |