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>
This commit is contained in:
parent
52f84add77
commit
704dcce754
4
deps/v8/build/features.gypi
vendored
4
deps/v8/build/features.gypi
vendored
@ -108,7 +108,7 @@
|
|||||||
'DebugBaseCommon': {
|
'DebugBaseCommon': {
|
||||||
'abstract': 1,
|
'abstract': 1,
|
||||||
'variables': {
|
'variables': {
|
||||||
'v8_enable_handle_zapping%': 0,
|
'v8_enable_handle_zapping%': 1,
|
||||||
},
|
},
|
||||||
'conditions': [
|
'conditions': [
|
||||||
['v8_enable_handle_zapping==1', {
|
['v8_enable_handle_zapping==1', {
|
||||||
@ -118,7 +118,7 @@
|
|||||||
}, # Debug
|
}, # Debug
|
||||||
'Release': {
|
'Release': {
|
||||||
'variables': {
|
'variables': {
|
||||||
'v8_enable_handle_zapping%': 1,
|
'v8_enable_handle_zapping%': 0,
|
||||||
},
|
},
|
||||||
'conditions': [
|
'conditions': [
|
||||||
['v8_enable_handle_zapping==1', {
|
['v8_enable_handle_zapping==1', {
|
||||||
|
2
deps/v8/codereview.settings
vendored
2
deps/v8/codereview.settings
vendored
@ -1,5 +1,5 @@
|
|||||||
CODE_REVIEW_SERVER: https://codereview.chromium.org
|
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/+/
|
VIEW_VC: https://chromium.googlesource.com/v8/v8/+/
|
||||||
STATUS: http://v8-status.appspot.com/status
|
STATUS: http://v8-status.appspot.com/status
|
||||||
TRY_ON_UPLOAD: False
|
TRY_ON_UPLOAD: False
|
||||||
|
2
deps/v8/include/v8-version.h
vendored
2
deps/v8/include/v8-version.h
vendored
@ -11,7 +11,7 @@
|
|||||||
#define V8_MAJOR_VERSION 4
|
#define V8_MAJOR_VERSION 4
|
||||||
#define V8_MINOR_VERSION 5
|
#define V8_MINOR_VERSION 5
|
||||||
#define V8_BUILD_NUMBER 103
|
#define V8_BUILD_NUMBER 103
|
||||||
#define V8_PATCH_LEVEL 30
|
#define V8_PATCH_LEVEL 33
|
||||||
|
|
||||||
// Use 1 for candidates and 0 otherwise.
|
// Use 1 for candidates and 0 otherwise.
|
||||||
// (Boolean macro values are not supported by all preprocessors.)
|
// (Boolean macro values are not supported by all preprocessors.)
|
||||||
|
1
deps/v8/src/ast.cc
vendored
1
deps/v8/src/ast.cc
vendored
@ -441,6 +441,7 @@ void ObjectLiteral::BuildConstantProperties(Isolate* isolate) {
|
|||||||
|
|
||||||
if (position == boilerplate_properties_ * 2) {
|
if (position == boilerplate_properties_ * 2) {
|
||||||
DCHECK(property->is_computed_name());
|
DCHECK(property->is_computed_name());
|
||||||
|
is_simple = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
DCHECK(!property->is_computed_name());
|
DCHECK(!property->is_computed_name());
|
||||||
|
@ -300,3 +300,59 @@ function ID(x) {
|
|||||||
};
|
};
|
||||||
}, MyError);
|
}, 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);
|
||||||
|
})();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user