Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(573)

Unified Diff: src/js/generator.js

Issue 1415683007: Reland "[es6] Fix Function and GeneratorFunction built-ins subclassing." (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@fix-subclass
Patch Set: Improved test Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/factory.cc ('k') | src/js/v8natives.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/js/generator.js
diff --git a/src/js/generator.js b/src/js/generator.js
index 6240f7ad3f0aa288f4e9f3fcf73a670a3e32df2f..4d3f3191254df7b01d5a8c5bcdc06a72d9d0c161 100644
--- a/src/js/generator.js
+++ b/src/js/generator.js
@@ -84,9 +84,11 @@ function GeneratorFunctionConstructor(arg1) { // length == 1
var global_proxy = %GlobalProxy(GeneratorFunctionConstructor);
// Compile the string in the constructor and not a helper so that errors
// appear to come from here.
- var f = %_CallFunction(global_proxy, %CompileString(source, true));
- %FunctionMarkNameShouldPrintAsAnonymous(f);
- return f;
+ var func = %_CallFunction(global_proxy, %CompileString(source, true));
+ // Set name-should-print-as-anonymous flag on the ShareFunctionInfo and
+ // ensure that |func| uses correct initial map from |new.target| if
+ // it's available.
+ return %CompleteFunctionConstruction(func, GeneratorFunction, new.target);
}
// ----------------------------------------------------------------------------
« no previous file with comments | « src/factory.cc ('k') | src/js/v8natives.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698