anchor.diff:      assert(optional(']', rightBracket));
       debugEvent("LiteralList");
   
  -    List<Expression> expressions = popList(count);
  +    List<Expression> expressions = popTypedList(count);
       TypeArgumentList typeArguments = pop();
       push(ast.listLiteral(
           constKeyword, typeArguments, leftBracket, expressions, rightBracket));
  
positive.code:     }
  
      ParameterKind analyzerKind = _toAnalyzerParameterKind(kind);
      if (analyzerKind != ParameterKind.REQUIRED) {
        node = ast.defaultFormalParameter(
            node, analyzerKind, defaultValue?.separator, defaultValue?.value);
      } else if (defaultValue != null) {
        // An error is reported if a required parameter has a default value.
        // Record it as named parameter for recovery.
        node = ast.defaultFormalParameter(node, ParameterKind.NAMED,
            defaultValue.separator, defaultValue.value);
      }
      push(node);
    }
  
    @override
  
negative.code: 
    /// Parse a documentation comment. Return the documentation comment that was
    /// parsed, or `null` if there was no comment.
    Comment _parseDocumentationCommentOpt(Token commentToken) {
      List<Token> tokens = <Token>[];
      while (commentToken != null) {
        if (commentToken.lexeme.startsWith('/**') ||
  