anchor.diff:    @override
     TreeElements get elements => resolvedAst.elements;
   
  -
     SourceInformationBuilder sourceInformationBuilder;
     KernelAstAdapter astAdapter;
     LoopHandler<ir.Node> loopHandler;
  
positive.code: 
    @override
    void visitThrow(ir.Throw throwNode) {
      throwNode.expression.accept(this);
      HInstruction expression = pop();
      if (isReachable) {
        push(new HThrowExpression(expression, null));
        isReachable = false;
      }
    }
  
  
negative.code:   visitFunctionDeclaration(ir.FunctionDeclaration declaration) {
      assert(isReachable);
      declaration.function.accept(this);
      LocalFunctionElement localFunction =
          astAdapter.getElement(declaration.function);
      localsHandler.updateLocal(localFunction, pop());
    }
  
  