• Toon Verwaest's avatar
    [ast] Always visit all AST nodes, even dead nodes · 9439a1d2
    Toon Verwaest authored
    We'll let the bytecode compiler and optimizing compilers deal with dead code,
    rather than the ast visitors. The problem is that the visitors previously
    disagreed upon what was dead. That's bad if necessary visitors omit parts of
    the code that the bytecode generator will actually visit.
    
    I did consider removing the AST nodes immediately in the parser, but that
    adds overhead and actually broke code coverage. Since dead code shouldn't be
    shipped to the browser anyway (and we can still omit it later in the bytecode
    generator), I opted for keeping the nodes instead.
    
    Change-Id: Ib02fa9031b17556d2e1d46af6648356486f8433d
    Reviewed-on: https://chromium-review.googlesource.com/c/1470108
    Commit-Queue: Toon Verwaest <verwaest@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#59569}
    9439a1d2
ast-traversal-visitor.h 16.9 KB