Bug 222526
Summary: | [JSC] Default constructor definition is changing | ||
---|---|---|---|
Product: | WebKit | Reporter: | Yusuke Suzuki <ysuzuki> |
Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | ashvayka, webkit-bug-importer, ysuzuki |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Yusuke Suzuki
https://github.com/tc39/ecma262/pull/2216
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Yusuke Suzuki
https://github.com/tc39/ecma262/issues/2212
Interesting.
Yusuke Suzuki
We should introduce @tailConstructForwardArguments.
function()
{
return @tailConstructForwardArguments(@getPrototypeOf(@callee)), this);
}
Why can it happen?
We do not need to check |this| when finishing this constructor since
1. we can ensure that we are always calling the super
2. we can ensure that we call super only once
Yusuke Suzuki
In this way, we can completely eliminate allocation for this default constructor, which is good ;)
Radar WebKit Bug Importer
<rdar://problem/75143301>