| var createBuiltin = $vm.createBuiltin; | |
| function shouldBe(actual, expected) { | |
| if (actual !== expected) | |
| throw new Error('bad value: ' + actual); | |
| } | |
| var builtin = createBuiltin(`(function (a) { | |
| return @argument(5); | |
| })`); | |
| function inlining(a, b, c) | |
| { | |
| return builtin.call(this, ...[1, 2, 3, 4, 5, 6, 7]); | |
| } | |
| noInline(inlining); | |
| function escape(value) | |
| { | |
| return value; | |
| } | |
| noInline(escape); | |
| (function () { | |
| for (var i = 0; i < 1e4; ++i) | |
| shouldBe(escape(inlining(0)), 6); | |
| }()); |