anchor.diff:          ensureIdentifier(token, IdentifierContext.constructorReference);
       listener.beginConstructorReference(start);
       token = parseQualifiedRestOpt(
  -            start, IdentifierContext.constructorReferenceContinuation)
  -        .next;
  -    token = parseTypeArgumentsOpt(token);
  +        start, IdentifierContext.constructorReferenceContinuation);
  +    token = parseTypeArgumentsOpt(token.next);
       Token period = null;
       if (optional('.', token)) {
         period = token;
  
positive.code:     IdentifierContext context = isTopLevel
          ? IdentifierContext.topLevelVariableDeclaration
          : IdentifierContext.fieldDeclaration;
      token = ensureIdentifier(token, context).next;
  
      int fieldCount = 1;
      token = parseFieldInitializerOpt(token, name, varFinalOrConst, isTopLevel);
      while (optional(',', token)) {
        name = ensureIdentifier(token.next, context);
        token = parseFieldInitializerOpt(
  
negative.code: 
                // Although it looks like there are no type variables here, they
                // may get injected from a comment.
                Token formals = parseTypeVariablesOpt(token.next);
  
                listener.beginLocalFunctionDeclaration(begin);
                listener.handleModifiers(0);
  