/* Handle recompilation on undefined properties and array holes. */ var v = {}; if (typeof v == 'string') v.x = 0; function prop(v) { var z = v.x + 1; assertEq(z, NaN); } prop(v); v = []; v[0] = 0; v[1] = 1; v[3] = 3; v[4] = 4; function elem(x) { var x = ""; for (var i = 0; i < 5; i++) x += v[i]; assertEq(x, "01undefined34"); } elem(v);