• adamk's avatar
    Use Scope::function_kind_ to distinguish arrow function scopes · 24565b85
    adamk authored
    Previously, arrow function scopes had a separate ScopeType. However,
    Scope::DeserializeScopeChain() erroneously deserialized ARROW_SCOPE
    ScopeInfos as FUNCTION_SCOPE. This could lead to bugs such as the
    attached one, where "super" was disallowed where it should have
    been allowed.
    
    This patch utilizes the Scope's FunctionKind to distinguish arrow
    functions from others. Besides fixing the above bug, this also
    simplifies code in various places that had to deal with two different
    ScopeTypes both of which meant "function".
    
    BUG=v8:4466
    LOG=n
    
    Review URL: https://codereview.chromium.org/1386253002
    
    Cr-Commit-Position: refs/heads/master@{#31154}
    24565b85
scopeinfo.cc 29 KB