anchor.diff:      /// function will call the appropriate event methods on [listener] to
       /// handle the type.
       Token commitType() {
  +      // TODO(brianwilkerson) Return the last consumed token.
         int count = 0;
         for (Token typeVariableStart in typeVariableStarters) {
           count++;
  
positive.code:   }
  
    Token parseClassOrNamedMixinApplication(Token abstractToken, Token token) {
      // TODO(brianwilkerson) Accept the last consumed token.
      listener.beginClassOrNamedMixinApplication(token);
      Token begin = abstractToken ?? token;
      if (abstractToken != null) {
  
negative.code:     final String value = token.stringValue;
      if (identical(value, 'class')) {
        directiveState?.checkDeclaration();
        return parseClassOrNamedMixinApplication(abstractToken, previous);
      } else if (identical(value, 'enum')) {
        directiveState?.checkDeclaration();
        return parseEnum(previous);
      } else if (identical(value, 'typedef')) {
        Token next = token.next;
        if (next.isIdentifier || optional("void", next)) {
  