[Webkit-unassigned] [Bug 149615] New: [ES6] Arrow function syntax. Arrow function specific features. Lexical bind "super"

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Sep 29 00:09:59 PDT 2015


https://bugs.webkit.org/show_bug.cgi?id=149615

            Bug ID: 149615
           Summary: [ES6] Arrow function syntax. Arrow function specific
                    features. Lexical bind "super"
    Classification: Unclassified
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: gskachkov at gmail.com

Arrow function doesn't raise early semantic errors if we are using 'super/super()', in comparison to the usual function (https://people.mozilla.org/~jorendorff/es6-draft.html#sec-function-definitions-static-semantics-early-errors, )
Also If I correctly understand this topic http://www.ecma-international.org/ecma-262/6.0/#sec-arrow-function-definitions-static-semantics-contains, then arrow function can contain 'super’ as SuperProperty and SuperCall.
At this topic  http://www.ecma-international.org/ecma-262/6.0/#sec-arrow-function-definitions-runtime-semantics-evaluation said: 
"Any reference to arguments, super, this, or new.target within an ArrowFunction must resolve to a binding in a lexically enclosing environment. Typically this will be the Function Environment of an immediately enclosing function. Even though an ArrowFunction may contain references to super, the function object created in step 4 is not made into a method by performing MakeMethod. An ArrowFunction that references super is always contained within a non-ArrowFunction and the necessary state to implement super is accessible via the scope that is captured by the function object of the ArrowFunction."

So for my understanding arrow function can operate by 'super' property and invoke the 'super()' function. 
Later if it necessary we can split this issue into two issues for SuperProperty and SuperCall.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20150929/e18670a4/attachment-0001.html>


More information about the webkit-unassigned mailing list