function g() { function f(v) { v = +v; var infinity = 0.0; var three = 0.0; var nan = 0.; var result = 0; infinity = 1.0 / 0.0; three = v + 2.0; nan = (infinity % three); result = ~~(nan + 42.0); return result | 0; } return f } g = g() var x; for(i=0; i < 20000; ++i) { x = g(1.0) } assertEq(x, 0);