summaryrefslogtreecommitdiff
path: root/deps/v8
diff options
context:
space:
mode:
authorAli Ijaz Sheikh <ofrobots@google.com>2015-09-14 17:16:54 -0700
committerAli Ijaz Sheikh <ofrobots@google.com>2015-09-15 09:12:01 -0700
commit704dcce75471e083cfbd85c16ee48c634aeedbf5 (patch)
treee13b48cfb0c6795cadcb76dfc7c301c18662eb4b /deps/v8
parent52f84add7746a233f1d4c8904344bef35b8fa2d2 (diff)
downloadandroid-node-v8-704dcce75471e083cfbd85c16ee48c634aeedbf5.tar.gz
android-node-v8-704dcce75471e083cfbd85c16ee48c634aeedbf5.tar.bz2
android-node-v8-704dcce75471e083cfbd85c16ee48c634aeedbf5.zip
deps: upgrade V8 to 4.5.103.33
This brings in the patches from 4.5.103.30...4.5.103.33 fixing the issue with computed property names not working in nested literals. Full V8 4.5 commit log at: https://chromium.googlesource.com/v8/v8.git/+log/branch-heads/4.5 Fixes: https://github.com/nodejs/node/issues/2507 PR-URL: https://github.com/nodejs/node/pull/2870 Reviewed-By: indutny - Fedor Indutny <fedor.indutny@gmail.com> Reviewed-By: targos - Michaƫl Zasso <mic.besace@gmail.com> Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: fishrock123 - Jeremiah Senkpiel <fishrock123@rocketmail.com>
Diffstat (limited to 'deps/v8')
-rw-r--r--deps/v8/build/features.gypi4
-rw-r--r--deps/v8/codereview.settings2
-rw-r--r--deps/v8/include/v8-version.h2
-rw-r--r--deps/v8/src/ast.cc1
-rw-r--r--deps/v8/test/mjsunit/harmony/computed-property-names.js56
5 files changed, 61 insertions, 4 deletions
diff --git a/deps/v8/build/features.gypi b/deps/v8/build/features.gypi
index 0e26969f64..59d15134dd 100644
--- a/deps/v8/build/features.gypi
+++ b/deps/v8/build/features.gypi
@@ -108,7 +108,7 @@
'DebugBaseCommon': {
'abstract': 1,
'variables': {
- 'v8_enable_handle_zapping%': 0,
+ 'v8_enable_handle_zapping%': 1,
},
'conditions': [
['v8_enable_handle_zapping==1', {
@@ -118,7 +118,7 @@
}, # Debug
'Release': {
'variables': {
- 'v8_enable_handle_zapping%': 1,
+ 'v8_enable_handle_zapping%': 0,
},
'conditions': [
['v8_enable_handle_zapping==1', {
diff --git a/deps/v8/codereview.settings b/deps/v8/codereview.settings
index 7c4dd8e255..532e4b4d7b 100644
--- a/deps/v8/codereview.settings
+++ b/deps/v8/codereview.settings
@@ -1,5 +1,5 @@
CODE_REVIEW_SERVER: https://codereview.chromium.org
-CC_LIST: v8-dev@googlegroups.com
+CC_LIST: v8-reviews@googlegroups.com
VIEW_VC: https://chromium.googlesource.com/v8/v8/+/
STATUS: http://v8-status.appspot.com/status
TRY_ON_UPLOAD: False
diff --git a/deps/v8/include/v8-version.h b/deps/v8/include/v8-version.h
index a2dc5b0db6..56ef22b0e6 100644
--- a/deps/v8/include/v8-version.h
+++ b/deps/v8/include/v8-version.h
@@ -11,7 +11,7 @@
#define V8_MAJOR_VERSION 4
#define V8_MINOR_VERSION 5
#define V8_BUILD_NUMBER 103
-#define V8_PATCH_LEVEL 30
+#define V8_PATCH_LEVEL 33
// Use 1 for candidates and 0 otherwise.
// (Boolean macro values are not supported by all preprocessors.)
diff --git a/deps/v8/src/ast.cc b/deps/v8/src/ast.cc
index e52504a86f..ec74e4afaf 100644
--- a/deps/v8/src/ast.cc
+++ b/deps/v8/src/ast.cc
@@ -441,6 +441,7 @@ void ObjectLiteral::BuildConstantProperties(Isolate* isolate) {
if (position == boilerplate_properties_ * 2) {
DCHECK(property->is_computed_name());
+ is_simple = false;
break;
}
DCHECK(!property->is_computed_name());
diff --git a/deps/v8/test/mjsunit/harmony/computed-property-names.js b/deps/v8/test/mjsunit/harmony/computed-property-names.js
index 36e1411169..a559159380 100644
--- a/deps/v8/test/mjsunit/harmony/computed-property-names.js
+++ b/deps/v8/test/mjsunit/harmony/computed-property-names.js
@@ -300,3 +300,59 @@ function ID(x) {
};
}, MyError);
})();
+
+
+(function TestNestedLiterals() {
+ var array = [
+ 42,
+ { a: 'A',
+ ['b']: 'B',
+ c: 'C',
+ [ID('d')]: 'D',
+ },
+ 43,
+ ];
+ assertEquals(42, array[0]);
+ assertEquals(43, array[2]);
+ assertEquals('A', array[1].a);
+ assertEquals('B', array[1].b);
+ assertEquals('C', array[1].c);
+ assertEquals('D', array[1].d);
+ var object = {
+ outer: 42,
+ inner: {
+ a: 'A',
+ ['b']: 'B',
+ c: 'C',
+ [ID('d')]: 'D',
+ },
+ outer2: 43,
+ };
+ assertEquals(42, object.outer);
+ assertEquals(43, object.outer2);
+ assertEquals('A', object.inner.a);
+ assertEquals('B', object.inner.b);
+ assertEquals('C', object.inner.c);
+ assertEquals('D', object.inner.d);
+ var object = {
+ outer: 42,
+ array: [
+ 43,
+ { a: 'A',
+ ['b']: 'B',
+ c: 'C',
+ [ID('d')]: 'D',
+ },
+ 44,
+ ],
+ outer2: 45
+ };
+ assertEquals(42, object.outer);
+ assertEquals(45, object.outer2);
+ assertEquals(43, object.array[0]);
+ assertEquals(44, object.array[2]);
+ assertEquals('A', object.array[1].a);
+ assertEquals('B', object.array[1].b);
+ assertEquals('C', object.array[1].c);
+ assertEquals('D', object.array[1].d);
+})();