--- /dev/null
+function foo(o_) {
+ var o = o_;
+ var result = 0;
+ for (var s in o) {
+ result += o[s];
+ if (result >= 3)
+ o = {0:1, 1:2, b:4, a:3};
+ }
+ return result;
+}
+
+noInline(foo);
+
+for (var i = 0; i < 10000; ++i) {
+ var result = foo({0:0, 1:1, a:2, b:3});
+ if (result != 7)
+ throw "Error: bad result: " + result;
+}