Upgrade V8 to 5.1.281.57
Change-Id: Id981b686b4d587ac31697662eb98bb34be42ad90
diff --git a/test/mjsunit/array-join.js b/test/mjsunit/array-join.js
index c08c182..0c949e7 100644
--- a/test/mjsunit/array-join.js
+++ b/test/mjsunit/array-join.js
@@ -91,3 +91,16 @@
a[5] = "ab";
a[90000] = "cd";
assertEquals("abcd", a.join("")); // Must not throw.
+
+
+// Make sure that each element is accessed exactly once, and in the correct
+// order.
+{
+ var log = [];
+ var p = new Proxy({length: 3, 0: 'a', 1: 'b'}, {
+ get: function(t, k, r) { log.push(k); return Reflect.get(t, k, r); }
+ });
+
+ assertEquals("a,b,", Array.prototype.join.call(p));
+ assertEquals(["length", "0", "1", "2"], log);
+}