|
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 strictNestedAssignShadowFunctionCall(p) |
|
10 { |
|
11 "use strict"; |
|
12 function inner() |
|
13 { |
|
14 function p() { } |
|
15 p = 1776; |
|
16 } |
|
17 inner(); |
|
18 return arguments; |
|
19 } |
|
20 |
|
21 var a1, a2, a3, a4; |
|
22 for (var i = 0; i < 5; i++) |
|
23 { |
|
24 a1 = strictNestedAssignShadowFunctionCall(); |
|
25 a2 = strictNestedAssignShadowFunctionCall(99); |
|
26 a3 = strictNestedAssignShadowFunctionCall(""); |
|
27 a4 = strictNestedAssignShadowFunctionCall(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); |