|
1 |
|
2 /* Don't confuse JIT code by making slow arrays that use inline slots inconsistently. */ |
|
3 |
|
4 function foo(a) |
|
5 { |
|
6 assertEq(a.x, 5); |
|
7 } |
|
8 |
|
9 function bar() |
|
10 { |
|
11 for (var i = 0; i < 50; i++) { |
|
12 var a = []; |
|
13 a[i] = 0; |
|
14 delete a[i]; |
|
15 a.x = 5; |
|
16 foo(a); |
|
17 } |
|
18 |
|
19 var b = [1,,2,,3,,4,,5]; |
|
20 assertEq(b.toString(), "1,,2,,3,,4,,5"); |
|
21 b.x = 0; |
|
22 assertEq(b.toString(), "1,,2,,3,,4,,5"); |
|
23 delete b.x; |
|
24 delete b[8]; |
|
25 delete b[6]; |
|
26 delete b[4]; |
|
27 assertEq(b.toString(), "1,,2,,,,,,"); |
|
28 } |
|
29 bar(); |