• marja's avatar
    Parsing: Create the same scopes for non-simple params in PreParser & Parser. · 35340917
    marja authored
    Rationale:
    
    - To do scope analysis based on PreParser, and use the result again when parsing
      later, PreParser and Parser need to produce the same Scopes and variable
      declarations in them.
    
    - This is not the case for non-simple parameters: Parser creates an additional
      inner Scope where the declarations were, whereas PreParser does
      DeclareVariableName directly in the function Scope.
    
    - So this CL fixes that by moving the Scope creation for non-simple parameters
      into ParserBase.
    
    - As a side product (and a partial proof that this change makes sense),
      PreParser::ParseEagerFunctionBody is now gone.
    
    BUG=v8:5516
    
    Review-Url: https://codereview.chromium.org/2638333002
    Cr-Commit-Position: refs/heads/master@{#42537}
    35340917
Name
Last commit
Last update
..
OWNERS Loading commit data...
duplicate-finder.cc Loading commit data...
duplicate-finder.h Loading commit data...
expression-classifier.h Loading commit data...
func-name-inferrer.cc Loading commit data...
func-name-inferrer.h Loading commit data...
parameter-initializer-rewriter.cc Loading commit data...
parameter-initializer-rewriter.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...
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...