• adamk's avatar
    Don't crash when preparsing destructured arguments · 7485da7a
    adamk authored
    This adds the materialized literal count accumulated while parsing the
    parameters (in the parser proper) to that accumulated by the preparser.
    
    This should have been caught in cctest/test-parsing, but it's not covered
    because the parsing tests call directly into the preparser rather than
    using Parser::ParseFunctionLiteral (which fully-parses the parameters
    and then calls into the preparser to skip over the function body).
    
    Note that this further-inflates the materialized literal count for
    functions with destructured arguments, since some of the counted
    literals are actually binding patterns. But that's not specific to
    binding patterns in formal parameters: it happens in function bodies, too.
    
    BUG=v8:4400,v8:4407
    LOG=n
    
    Review URL: https://codereview.chromium.org/1350913005
    
    Cr-Commit-Position: refs/heads/master@{#30868}
    7485da7a
regress-4400.js 280 Bytes