Upgrade V8 to version 4.9.385.28
https://chromium.googlesource.com/v8/v8/+/4.9.385.28
Change-Id: I4b2e74289d4bf3667f2f3dc8aa2e541f63e26eb4
diff --git a/test/mjsunit/object-literal-multiple-fields.js b/test/mjsunit/object-literal-multiple-fields.js
new file mode 100644
index 0000000..f36d14d
--- /dev/null
+++ b/test/mjsunit/object-literal-multiple-fields.js
@@ -0,0 +1,96 @@
+// Copyright 2015 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+(function TestConstants() {
+ var o = {
+ p: 1,
+ p: 2,
+ };
+ assertEquals(2, o.p);
+})();
+
+
+(function TestMaterialized() {
+ var o = {
+ p: [1],
+ p: [2],
+ };
+ assertEquals(2, o.p[0]);
+})();
+
+
+(function TestMaterialize2() {
+ var o = {
+ p: function() {},
+ p: 2,
+ };
+ assertEquals(2, o.p);
+})();
+
+
+
+(function TestComputed() {
+ var o = {
+ p: (function() { return 1; })(),
+ p: (function() { return 2; })(),
+ };
+ assertEquals(2, o.p);
+})();
+
+
+(function TestComputed2() {
+ var o = {
+ p: (function() { return 1; })(),
+ p: 2,
+ };
+ assertEquals(2, o.p);
+})();
+
+
+
+(function TestGetter() {
+ var o = {
+ get p() { return 1; },
+ get p() { return 2; },
+ };
+ assertEquals(2, o.p);
+})();
+
+
+(function TestGetterSetter() {
+ var o = {
+ get p() { return 1; },
+ set p(_) {},
+ };
+ assertEquals(1, o.p);
+
+ o = {
+ set p(_) {},
+ get p() { return 2; },
+ };
+ assertEquals(2, o.p);
+})();
+
+
+(function TestCombined() {
+ var o = {
+ get p() { return 1; },
+ p: 2,
+ };
+ assertEquals(2, o.p);
+
+ o = {
+ get p() { return 1; },
+ p: 2,
+ get p() { return 3; },
+ };
+ assertEquals(3, o.p);
+
+ o = {
+ get p() { return 1; },
+ p: 2,
+ set p(_) {},
+ };
+ assertEquals(undefined, o.p);
+})();