anchor.diff:          return label;
         case Tag.BreakStatement:
           int index = readUInt();
  -        return new BreakStatement(labelStack[index]);
  +        return new BreakStatement(labelStack[labelStackBase + index]);
         case Tag.WhileStatement:
           return new WhileStatement(readExpression(), readStatement());
         case Tag.DoStatement:
  
positive.code:   final List<Library> importTable = <Library>[];
    final List<VariableDeclaration> variableStack = <VariableDeclaration>[];
    final List<LabeledStatement> labelStack = <LabeledStatement>[];
    final List<SwitchCase> switchCaseStack = <SwitchCase>[];
    final List<TypeParameter> typeParameterStack = <TypeParameter>[];
    final String filename;
  
negative.code:     var positional = readAndPushVariableDeclarationList();
      var named = readAndPushVariableDeclarationList();
      var returnType = readDartType();
      int oldLabelStackBase = labelStackBase;
      labelStackBase = labelStack.length;
      var body = readStatementOption();
      labelStackBase = oldLabelStackBase;
      variableStack.length = variableStackHeight;
      typeParameterStack.length = typeParameterStackHeight;
      return new FunctionNode(body,
  