diff options
author | Michaël Zasso <targos@protonmail.com> | 2018-12-04 08:20:37 +0100 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2018-12-06 15:23:33 +0100 |
commit | 9b4bf7de6c9a7c25f116c7a502384c20b5cfaea3 (patch) | |
tree | 2b0c843168dafb939d8df8a15b2aa72b76dee51d /deps/v8/src/builtins/builtins-function.cc | |
parent | b8fbe69db1292307adb2c2b2e0d5ef48c4ab2faf (diff) | |
download | android-node-v8-9b4bf7de6c9a7c25f116c7a502384c20b5cfaea3.tar.gz android-node-v8-9b4bf7de6c9a7c25f116c7a502384c20b5cfaea3.tar.bz2 android-node-v8-9b4bf7de6c9a7c25f116c7a502384c20b5cfaea3.zip |
deps: update V8 to 7.1.302.28
PR-URL: https://github.com/nodejs/node/pull/23423
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Diffstat (limited to 'deps/v8/src/builtins/builtins-function.cc')
-rw-r--r-- | deps/v8/src/builtins/builtins-function.cc | 33 |
1 files changed, 4 insertions, 29 deletions
diff --git a/deps/v8/src/builtins/builtins-function.cc b/deps/v8/src/builtins/builtins-function.cc index c97bd8a587..43a3853715 100644 --- a/deps/v8/src/builtins/builtins-function.cc +++ b/deps/v8/src/builtins/builtins-function.cc @@ -41,11 +41,7 @@ MaybeHandle<Object> CreateDynamicFunction(Isolate* isolate, IncrementalStringBuilder builder(isolate); builder.AppendCharacter('('); builder.AppendCString(token); - if (FLAG_harmony_function_tostring) { - builder.AppendCString(" anonymous("); - } else { - builder.AppendCharacter('('); - } + builder.AppendCString(" anonymous("); bool parenthesis_in_arg_string = false; if (argc > 1) { for (int i = 1; i < argc; ++i) { @@ -55,31 +51,10 @@ MaybeHandle<Object> CreateDynamicFunction(Isolate* isolate, isolate, param, Object::ToString(isolate, args.at(i)), Object); param = String::Flatten(isolate, param); builder.AppendString(param); - if (!FLAG_harmony_function_tostring) { - // If the formal parameters string include ) - an illegal - // character - it may make the combined function expression - // compile. We avoid this problem by checking for this early on. - DisallowHeapAllocation no_gc; // Ensure vectors stay valid. - String::FlatContent param_content = param->GetFlatContent(); - for (int i = 0, length = param->length(); i < length; ++i) { - if (param_content.Get(i) == ')') { - parenthesis_in_arg_string = true; - break; - } - } - } } - if (!FLAG_harmony_function_tostring) { - // If the formal parameters include an unbalanced block comment, the - // function must be rejected. Since JavaScript does not allow nested - // comments we can include a trailing block comment to catch this. - builder.AppendCString("\n/*``*/"); - } - } - if (FLAG_harmony_function_tostring) { - builder.AppendCharacter('\n'); - parameters_end_pos = builder.Length(); } + builder.AppendCharacter('\n'); + parameters_end_pos = builder.Length(); builder.AppendCString(") {\n"); if (argc > 0) { Handle<String> body; @@ -303,7 +278,7 @@ BUILTIN(FunctionPrototypeToString) { } // With the revised toString behavior, all callable objects are valid // receivers for this method. - if (FLAG_harmony_function_tostring && receiver->IsJSReceiver() && + if (receiver->IsJSReceiver() && JSReceiver::cast(*receiver)->map()->is_callable()) { return ReadOnlyRoots(isolate).function_native_code_string(); } |