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>