var flag = true; | |
flag = false; | |
function foo(a, b, string) | |
{ | |
var x = a + b; | |
if (flag) | |
return eval(string); | |
return 42; | |
} | |
noInline(foo); | |
for (var i = 0; i < 100000; ++i) { | |
var result = foo(1, 2, "x + 1"); | |
if (result != 42) | |
throw "Error: bad result in loop: " + result; | |
} | |
flag = true; | |
var result = foo(1, 2, "x - 1"); | |
if (result != 1 + 2 - 1) | |
throw "Error: bad result at end: " + result; |