• Adam Klein's avatar
    [parser] Skipping inner funcs: accurately record NeedsHomeObject · 94a71d7c
    Adam Klein authored
    Inner functions which called eval, and were the kind of functions
    that can use `super`, were erroneously not marked as "uses_super_property",
    leading to downstream crashes when the runtime tried to load the
    [[HomeObject]] from them.
    
    This patch eliminates the public Scope::uses_super_property()
    API and ensures that callers always call Scope::NeedsHomeObject()
    instead.
    
    This is a minimal fix designed for easy merging; it's likely that
    in the long run we should remove most mentions of "uses super property"
    and replace them with "needs home object" for clarity.
    
    Bug: v8:5516, chromium:774994
    Change-Id: Id269dd33e35bd40f6b59a3d3e19330687afa64f8
    Reviewed-on: https://chromium-review.googlesource.com/721879Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
    Commit-Queue: Adam Klein <adamk@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#48619}
    94a71d7c
Name
Last commit
Last update
..
OWNERS Loading commit data...
background-parsing-task.cc Loading commit data...
background-parsing-task.h Loading commit data...
duplicate-finder.h Loading commit data...
expression-classifier.h Loading commit data...
expression-scope-reparenter.cc Loading commit data...
expression-scope-reparenter.h Loading commit data...
func-name-inferrer.cc Loading commit data...
func-name-inferrer.h Loading commit data...
parse-info.cc Loading commit data...
parse-info.h Loading commit data...
parser-base.h Loading commit data...
parser.cc Loading commit data...
parser.h Loading commit data...
parsing.cc Loading commit data...
parsing.h Loading commit data...
pattern-rewriter.cc Loading commit data...
preparse-data-format.h Loading commit data...
preparse-data.cc Loading commit data...
preparse-data.h Loading commit data...
preparsed-scope-data.cc Loading commit data...
preparsed-scope-data.h Loading commit data...
preparser.cc Loading commit data...
preparser.h Loading commit data...
rewriter.cc Loading commit data...
rewriter.h Loading commit data...
scanner-character-streams.cc Loading commit data...
scanner-character-streams.h Loading commit data...
scanner.cc Loading commit data...
scanner.h Loading commit data...
token.cc Loading commit data...
token.h Loading commit data...