js/src/jit-test/tests/arguments/strict-nested-assign-shadow-function-name.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:8797fbd39f11
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 strictNestedAssignShadowFunctionName(p)
10 {
11 "use strict";
12 function inner()
13 {
14 function p() { p = 1776; }
15 p();
16 }
17 inner();
18 return arguments;
19 }
20
21 var a1, a2, a3, a4, a5;
22 for (var i = 0; i < 5; i++)
23 {
24 a1 = strictNestedAssignShadowFunctionName();
25 a2 = strictNestedAssignShadowFunctionName(99);
26 a3 = strictNestedAssignShadowFunctionName("");
27 a4 = strictNestedAssignShadowFunctionName(obj);
28 }
29
30 assertEq(arraysEqual(a1, []), true);
31 assertEq(arraysEqual(a2, [99]), true);
32 assertEq(arraysEqual(a3, [""]), true);
33 assertEq(arraysEqual(a4, [obj]), true);

mercurial