anchor.diff:      Token begin = token;
       listener.beginClassBody(token);
       if (!optional('{', token)) {
  -      token =
  -          reportUnrecoverableErrorCodeWithToken(token, codeExpectedClassBody)
  -              .next;
  +      token = reportUnrecoverableErrorCodeWithToken(
  +              token, fasta.codeExpectedClassBody)
  +          .next;
       }
       token = token.next;
       int count = 0;
  
positive.code:     Token asyncToken = token;
      token = parseAsyncModifier(token);
      if (getOrSet != null && !inPlainSync && optional("set", getOrSet)) {
        reportRecoverableErrorCode(asyncToken, codeSetterNotSync);
      }
      token = parseFunctionBody(token, false, externalModifier != null);
      asyncState = savedAsyncModifier;
  
negative.code:     Token begin = token;
      int statementCount = 0;
      if (!optional('{', token)) {
        token = reportUnrecoverableErrorCodeWithToken(
                token, fasta.codeExpectedFunctionBody)
            .next;
        listener.handleInvalidFunctionBody(token);
        return token;
      }
  