anchor.diff:      w.Label loop = b.loop();
       _branchIf(node.condition, block, negated: true);
       allocateContext(node);
  -    node.body.accept(this);
  +    visitStatement(node.body);
       b.br(loop);
       b.end();
       b.end();
  
positive.code:         b.local_get(thrownStackTrace);
          b.local_set(guardedStackTrace);
        }
        catch_.body.accept(this);
  
        // Jump out of the try entirely if we enter any catch block.
        b.br(try_);
  
negative.code:   void visitIfStatement(IfStatement node) {
      _conditional(
          node.condition,
          () => visitStatement(node.then),
          node.otherwise != null ? () => visitStatement(node.otherwise!) : null,
          const []);
    }
  
  