• adamk's avatar
    Don't treat catch scopes as possibly-shadowing for sloppy eval · 75f2d65f
    adamk authored
    Scope analysis is over-conservative when treating variable resolutions
    as possibly-shadowed by a sloppy eval. In the attached bug, this comes
    into play since catch scopes have different behavior with respect to
    the "calls eval" in eager vs lazy compilation (in the latter, they
    are never marked as "calls eval" because CatchContexts don't have
    an associated ScopeInfo).
    
    This patch changes the scope-type check to also eliminate a few other
    cases where shadowing isn't possible, such as non-declaration block scopes.
    
    BUG=chromium:608279
    LOG=n
    
    Review-Url: https://codereview.chromium.org/1950803002
    Cr-Commit-Position: refs/heads/master@{#36046}
    75f2d65f
scopes.cc 50.8 KB