]>
Commit | Line | Data |
---|---|---|
ed1e77d3 A |
1 | var n = 10000000; |
2 | ||
3 | function bar(f) { f(10); } | |
4 | ||
5 | function foo(b) { | |
6 | var result = 0; | |
7 | var imUndefined; | |
8 | var baz; | |
9 | var set = function (x) { result = x; return (imUndefined, baz); } | |
10 | baz = 40; | |
11 | if (b) { | |
12 | bar(set); | |
13 | if (result != 10) | |
14 | throw "Error: bad: " + result; | |
15 | if (baz !== 40) | |
16 | throw "Error: bad: " + baz; | |
17 | if (imUndefined !== void 0) | |
18 | throw "Error: bad value: " + imUndefined; | |
19 | return 0; | |
20 | } | |
21 | return result; | |
22 | } | |
23 | ||
24 | noInline(bar); | |
25 | noInline(foo); | |
26 | ||
27 | for (var i = 0; i < n; i++) { | |
28 | var result = foo(!(i % 100)); | |
29 | if (result != 0) | |
30 | throw "Error: bad result: " + result; | |
31 | } |