Upgrade to 3.29
Update V8 to 3.29.88.17 and update makefiles to support building on
all the relevant platforms.
Bug: 17370214
Change-Id: Ia3407c157fd8d72a93e23d8318ccaf6ecf77fa4e
diff --git a/test/mjsunit/array-shift.js b/test/mjsunit/array-shift.js
index 3601cbb..ad742e1 100644
--- a/test/mjsunit/array-shift.js
+++ b/test/mjsunit/array-shift.js
@@ -106,3 +106,17 @@
assertEquals(array[7], array_proto[7]);
assertFalse(array.hasOwnProperty(7));
})();
+
+// Check that non-enumerable elements are treated appropriately
+(function() {
+ var array = [1, 2, 3];
+ Object.defineProperty(array, '1', {enumerable: false});
+ assertEquals(1, array.shift());
+ assertEquals([2, 3], array);
+
+ array = [1,,3];
+ array.__proto__[1] = 2;
+ Object.defineProperty(array.__proto__, '1', {enumerable: false});
+ assertEquals(1, array.shift());
+ assertEquals([2, 3], array);
+})();