[JSC] AI should not propagate AbstractValue relying on constant folding phase
[WebKit-https.git] / JSTests / stress / call-apply-builtin-functions-dont-use-iterators.js
1 (function(){
2     "use strict";
3     var it = [][Symbol.iterator]();
4     while (it) {
5         if (it.hasOwnProperty('next'))
6             delete it.next;
7         it = Object.getPrototypeOf(it);
8     }
9
10     var bind = Function.prototype.bind;
11     var uncurryThis = bind.bind(bind.call);
12
13     var bindFn = uncurryThis(bind);
14     var applyFn = uncurryThis(bind.apply);
15     function test() { print("here"); }
16     var sliceFn = uncurryThis([].slice);
17     function addAll(var_args) {
18         var args = sliceFn(arguments, 0);
19         var result = this;
20         for (var i = 0; i < args.length; i++)
21             result += args[i];
22         return result;
23     }
24     if (applyFn(addAll, 3, [4, 5, 6]) !== 18)
25         throw "incorrect result";
26
27 })();