anchor.diff:        listener.handleNativeFunctionBodyIgnored(nativeToken, token);
         // Fall through to recover and skip function body
       }
  -    token = token;
       String value = token.stringValue;
       if (identical(value, ';')) {
         if (!allowAbstract) {
  
positive.code:   }
  
    Token parseNativeClause(Token nativeToken) {
      Token token = nativeToken.next;
      bool hasName = false;
      if (token.kind == STRING_TOKEN) {
  
negative.code:   /// ;
    /// ```
    Token parseDottedName(Token token) {
      Token firstIdentifier =
          ensureIdentifier(token, IdentifierContext.dottedName);
      listener.beginDottedName(firstIdentifier);
      token = firstIdentifier.next;
      int count = 1;
      while (optional('.', token)) {
  